﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-aijava-文章分类-Spring框架学习</title><link>http://www.blogjava.net/hayun/category/16896.html</link><description>welcome to my online log ! open java new world!
Taste java charm........</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 07:54:49 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 07:54:49 GMT</pubDate><ttl>60</ttl><item><title>JB整合SSH</title><link>http://www.blogjava.net/hayun/articles/SSH.html</link><dc:creator>苑</dc:creator><author>苑</author><pubDate>Sun, 05 Nov 2006 13:29:00 GMT</pubDate><guid>http://www.blogjava.net/hayun/articles/SSH.html</guid><description><![CDATA[
		<p>在网上经常看到用Eclipse整合SSH然后我就在学校用JB整合了一个SSH的例子演示出来，很有成就感! 呵呵<br />打开JB建一个工程然后〉建站点〉建AcionForm , Acion , JSP这样就把Struts框架搭建出来了！<br />然后就是把Hibernate的Jar 和Spring 的Jar 导进工程当中建好的Struts框架如图:<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115917832.jpg" />然后开始编写一个接口UserDAO.java<br /><font color="#deb887">package SpringPack;</font></p>
		<p>
				<font color="#deb887">public interface UserDAO {<br />  public abstract boolean isValidUser(String name,String password);<br />}</font>
				<br />编写一个类继承该接口UserDAOImp.java<br /><font color="#deb887">package SpringPack;</font></p>
		<p>
				<font color="#deb887">import org.springframework.orm.hibernate.support.*;<br />import net.sf.hibernate.SessionFactory;<br />import java.util.List;<br />import Hibernate.hibernateTest;<br />import net.sf.hibernate.*;</font>
		</p>
		<p>
				<font color="#deb887">public class UserDAOImp extends HibernateDaoSupport implements UserDAO{</font>
		</p>
		<p>
				<font color="#deb887">  public boolean isValidUser(String name,String pwd){<br />    hibernateTest t = null;<br />    try {<br />      t = new hibernateTest();<br />    }<br />    catch (HibernateException ex) {<br />      ex.printStackTrace();<br />    }<br />    if(t.checkUser(name,pwd)) return true;<br />    return false;<br />  }<br />}<br /><br /></font>
				<font color="#000000">然后编写一个Bean用来映射数据表的字段<br /></font>
				<font color="#deb887">package Hibernate;</font>
		</p>
		<p>
				<font color="#deb887">public class user {<br />  private String username;<br />  private String password;<br />  public user() {<br />  }</font>
		</p>
		<p>
				<font color="#deb887">  public void setUsername(String username) {<br />    this.username = username;<br />  }</font>
		</p>
		<p>
				<font color="#deb887">  public void setPassword(String password) {<br />    this.password = password;<br />  }</font>
		</p>
		<p>
				<font color="#deb887">  public String getUsername() {<br />    return username;<br />  }</font>
		</p>
		<p>
				<font color="#deb887">  public String getPassword() {<br />    return password;<br />  }<br />}<br /><br /></font>
				<font color="#000000">编写hibernate.cfg.xml文件用于连接数据库的配置文件：<br /><font color="#deb887">&lt;?xml version='1.0' encoding='big5'?&gt;<br />&lt;!DOCTYPE hibernate-configuration<br />    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"<br />    "</font><a href="http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd"><font color="#deb887">http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd</font></a></font>
				<font color="#deb887">"&gt;</font>
		</p>
		<p>
				<font color="#deb887">&lt;hibernate-configuration&gt;</font>
		</p>
		<p>
				<font color="#deb887">    &lt;session-factory&gt;</font>
		</p>
		<p>
				<br />
				<font color="#deb887">        &lt;property name="show_sql"&gt;true&lt;/property&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="dialect"&gt;net.sf.hibernate.dialect.MySQLDialect&lt;/property&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="connection.driver_class"&gt;com.mysql.jdbc.Driver&lt;/property&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="connection.url"&gt;jdbc:mysql://localhost/myDB&lt;/property&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="connection.username"&gt;root&lt;/property&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="connection.password"&gt;test&lt;/property&gt;</font>
		</p>
		<p>
				<br />
				<font color="#deb887">        &lt;mapping resource="user.hbm.xml"/&gt;</font>
		</p>
		<p>
				<font color="#deb887">    &lt;/session-factory&gt;</font>
		</p>
		<p>
				<font color="#deb887">&lt;/hibernate-configuration&gt;<br /><br /><br /></font>
				<font color="#000000">然后下面编写一个描述数据库映射表字段信息的mapping文件User.hbm.xml <br /><font color="#deb887">&lt;?xml version="1.0"?&gt;<br />&lt;!DOCTYPE hibernate-mapping<br />    PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"<br />    "</font><a href="http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"><font color="#deb887">http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd</font></a></font>
				<font color="#deb887">"&gt;</font>
		</p>
		<p>
				<font color="#deb887">&lt;hibernate-mapping&gt;</font>
		</p>
		<p>
				<font color="#deb887">    &lt;class name="Hibernate.user" table="user"&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;id name="username" type="string" unsaved-value="null"&gt;<br />            &lt;column name="username" sql-type="varchar(20)" /&gt;<br />            &lt;generator class="uuid.hex"/&gt;<br />        &lt;/id&gt;</font>
		</p>
		<p>
				<font color="#deb887">        &lt;property name="password" type="string" column="password"/&gt;</font>
		</p>
		<p>
				<font color="#deb887">    &lt;/class&gt;</font>
		</p>
		<p>
				<font color="#deb887">&lt;/hibernate-mapping&gt;<br /></font>
				<font color="#000000">好了现在Hibernate已基本搭建出来了，下一步我们要用Spring来整合Hibernate 和Struts 操作步骤很简单编写一个applicationContext.xml文件放在站点的根目录即可:<br /><font color="#deb887">&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"<br />"</font><a href="http://www.springframework.org/dtd/spring-beans.dtd"><font color="#deb887">http://www.springframework.org/dtd/spring-beans.dtd</font></a></font>
				<font color="#deb887">"&gt;<br />&lt;beans&gt;<br />  &lt;bean name="/loginAction"<br />    class="StrutsPack.LoginAction"<br />    singleton="false"&gt;<br />  &lt;/bean&gt;<br />&lt;/beans&gt;<br /></font>
				<font color="#000000">要整合Struts还要在Struts-config.xml文件中做一些修改如下:<br /><font color="#deb887">&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "</font><a href="http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><font color="#deb887">http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd</font></a></font>
				<font color="#deb887">"&gt;<br />&lt;struts-config&gt;<br />  &lt;form-beans&gt;<br />    &lt;form-bean name="loginActionForm" type="StrutsPack.LoginActionForm" /&gt;<br />  &lt;/form-beans&gt;<br />  &lt;action-mappings&gt;<br />    &lt;action  name="loginActionForm" path="/loginAction" scope="session" type="org.springframework.web.struts.DelegatingActionProxy" validate="false"&gt;<br />      &lt;forward name="Success" path="/success.jsp" /&gt;<br />      &lt;forward name="Failure" path="/Failure.jsp" /&gt;<br />    &lt;/action&gt;<br />  &lt;/action-mappings&gt;<br />  &lt;plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"&gt;<br />    &lt;set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" /&gt;<br />  &lt;/plug-in&gt;<br />&lt;/struts-config&gt;<br /></font>
				<font color="#000000">好了现在还要编写一个Hibernate的辅助文件如下:<br /></font>
				<font color="#deb887">package Hibernate;</font>
		</p>
		<p>
				<font color="#deb887">import net.sf.hibernate.*;<br />import net.sf.hibernate.cfg.*;<br />import java.util.List;<br />import java.util.ListIterator;</font>
		</p>
		<p>
				<font color="#deb887">public class hibernateTest {<br />  Session session;<br />  public hibernateTest()<br />  throws HibernateException{<br />    SessionFactory factory=new Configuration().configure().buildSessionFactory();<br />     session=factory.openSession();</font>
		</p>
		<p>
				<br />
				<font color="#deb887">  }<br />  public boolean checkUser(String name,String pwd){<br />  List count = null;<br />  try {<br />    Query q = session.createQuery(<br />        "select count(*) from user where username=? and password=?");<br />    q.setString(1, name);<br />    q.setString(2, pwd);<br />    count = q.list();<br />  }<br />  catch (HibernateException ex) {<br />    ex.printStackTrace();<br />  }<br />  ListIterator list=count.listIterator();<br />  Integer s=(Integer)list.next();<br />  if(s.intValue() &gt; 0 ) return true;<br />  return false;<br />  }<br />}<br /></font>
		</p>
		<p>
				<font color="#deb887">
						<font color="#000000">然后就可以在LoginAction.java中调用了LoginAction.java文件如下:<br /></font>
				</font>
				<font color="#deb887">package StrutsPack;</font>
		</p>
		<p>
				<font color="#deb887">import org.apache.struts.action.ActionMapping;<br />import org.apache.struts.action.ActionForm;<br />import javax.servlet.http.HttpServletRequest;<br />import javax.servlet.http.HttpServletResponse;<br />import org.apache.struts.action.ActionForward;<br />import org.apache.struts.action.Action;<br />import SpringPack.*;</font>
		</p>
		<p>
				<font color="#deb887">public class LoginAction<br />    extends Action {<br />  private static final String SUCCESS="Success";<br />  private static final String FAILURE="Failure";</font>
		</p>
		<p>
				<font color="#deb887">  private UserDAO userdao=new UserDAOImp();</font>
		</p>
		<p>
				<font color="#deb887">  public ActionForward execute(ActionMapping mapping,<br />                               ActionForm actionForm,<br />                               HttpServletRequest servletRequest,<br />                               HttpServletResponse servletResponse) {<br />    LoginActionForm loginform = (LoginActionForm) actionForm;</font>
		</p>
		<p>
				<font color="#deb887">    if(userdao.isValidUser(loginform.getUsername(),loginform.getPassword())){<br />    return mapping.findForward(SUCCESS);<br />    }<br />    return mapping.findForward(FAILURE);<br />  }</font>
		</p>
		<p>
				<font color="#deb887">  public UserDAO getUserDAO() {<br />    return userdao;<br />}<br />public void setUserDAO(UserDAO userDAO) {<br />  this.userdao = userDAO;<br />}</font>
		</p>
		<p>
				<font color="#deb887">
						<font color="#deb887">}<br /></font>
						<font color="#000000">至此JB开发一个简单的SSH就结束了感觉就是两个字麻烦！还是使用Eclispe开发方便!下面是具体的path:<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115157935.jpg" /></font>
				</font>
		</p>
<img src ="http://www.blogjava.net/hayun/aggbug/79262.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hayun/" target="_blank">苑</a> 2006-11-05 21:29 <a href="http://www.blogjava.net/hayun/articles/SSH.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Spring 框架简介</title><link>http://www.blogjava.net/hayun/articles/spring2.html</link><dc:creator>苑</dc:creator><author>苑</author><pubDate>Sun, 05 Nov 2006 12:19:00 GMT</pubDate><guid>http://www.blogjava.net/hayun/articles/spring2.html</guid><wfw:comment>http://www.blogjava.net/hayun/comments/79252.html</wfw:comment><comments>http://www.blogjava.net/hayun/articles/spring2.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hayun/comments/commentRss/79252.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hayun/services/trackbacks/79252.html</trackback:ping><description><![CDATA[Spring 是一个开源框架，是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构，分层架构允许您选择使用哪一个组件，同时为 J2EE 应用程序开发提供集成的框架。
<p>　　在这篇由三部分组成的 Spring 系列 的第 1 部分中，我将介绍 Spring 框架。我先从框架底层模型的角度描述该框架的功能，然后将讨论两个最有趣的模块：Spring 面向方面编程（AOP）和控制反转 （IOC） 容器。接着将使用几个示例演示 IOC 容器在典型应用程序用例场景中的应用情况。这些示例还将成为本系列后面部分进行的展开式讨论的基础，在本文的后面部分，将介绍 Spring 框架通过 Spring AOP 实现 AOP 构造的方式。</p><p>　　<strong>Spring 框架</strong></p><p>　　Spring 框架是一个分层架构，由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上，核心容器定义了创建、配置和管理 bean 的方式，如图 1 所示。<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115976650.gif" /><br />组成 Spring 框架的每个模块（或组件）都可以单独存在，或者与其他一个或多个模块联合实现。每个模块的功能如下： </p><p>　　☆ <strong>核心容器</strong>：核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory，它是工厂模式的实现。BeanFactory 使用控制反转 （IOC） 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。<br />　　☆ <strong>Spring 上下文</strong>：Spring 上下文是一个配置文件，向 Spring 框架提供上下文信息。Spring 上下文包括企业服务，例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。<br />　　☆ <strong>Spring AOP</strong>：通过配置管理特性，Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以，可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP，不用依赖 EJB 组件，就可以将声明性事务管理集成到应用程序中。<br />　　☆ <strong>Spring DAO</strong>：JDBC DAO 抽象层提供了有意义的异常层次结构，可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理，并且极大地降低了需要编写的异常代码数量（例如打开和关闭连接）。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。<br />　　☆ <strong>Spring ORM</strong>：Spring 框架插入了若干个 ORM 框架，从而提供了 ORM 的对象关系工具，其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。<br />　　☆ <strong>Spring Web 模块</strong>：Web 上下文模块建立在应用程序上下文模块之上，为基于 Web 的应用程序提供了上下文。所以，Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。<br />　　☆<strong> Spring MVC 框架</strong>：MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口，MVC 框架变成为高度可配置的，MVC 容纳了大量视图技术，其中包括 JSP、Velocity、Tiles、iText 和 POI。</p><p>　　Spring 框架的功能可以用在任何 J2EE 服务器中，大多数功能也适用于不受管理的环境。Spring 的核心要点是：支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问，这样的对象可以在不同 J2EE 环境 （Web 或 EJB）、独立应用程序、测试环境之间重用。 </p><p><br /></p><img src ="http://www.blogjava.net/hayun/aggbug/79252.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hayun/" target="_blank">苑</a> 2006-11-05 20:19 <a href="http://www.blogjava.net/hayun/articles/spring2.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Spring轻松连接数据库</title><link>http://www.blogjava.net/hayun/articles/spring1.html</link><dc:creator>苑</dc:creator><author>苑</author><pubDate>Sun, 05 Nov 2006 10:44:00 GMT</pubDate><guid>http://www.blogjava.net/hayun/articles/spring1.html</guid><description><![CDATA[今天有一些时间学习新技术感到很兴奋!!<br />学习Spring两个礼拜了,终于感到她有着无穷的魅力!!好了闲话少说开始学习Spring框架!!<br />先打开Eclipse然后新建一个J2EE工程,本人连接的是MS SQLServer2000数据库,Tomcat5.0<br />如图1:<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115875617.bmp" /><br />然后配置连接数据库的文件bean.xml可以起别的名字，这里我就习惯了<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115718691.jpg" /><br /><br />好了最后开始编写conn.java程序这样用 Spring框架就可以连接数据库了!<br /><br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115308791.jpg" /><br /><img src ="http://www.blogjava.net/hayun/aggbug/79238.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hayun/" target="_blank">苑</a> 2006-11-05 18:44 <a href="http://www.blogjava.net/hayun/articles/spring1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>