??xml version="1.0" encoding="utf-8" standalone="yes"?>久久精品视频一区二区三区,欧美成人中文字幕,美国成人毛片http://www.aygfsteel.com/hayun/category/16896.htmlwelcome to my online log ! open java new world! Taste java charm........zh-cnWed, 28 Feb 2007 07:54:49 GMTWed, 28 Feb 2007 07:54:49 GMT60JB整合SSHhttp://www.aygfsteel.com/hayun/articles/SSH.html?/dc:creator>?/author>Sun, 05 Nov 2006 13:29:00 GMThttp://www.aygfsteel.com/hayun/articles/SSH.html在网上经常看到用Eclipse整合SSH然后我就在学校用JB整合了一个SSH的例子演C出来,很有成就? 呵呵
打开JBZ个工E然后〉徏站点〉徏AcionForm , Acion , JSPq样把Struts框架搭徏出来了!
然后是把Hibernate的Jar 和Spring 的Jar D工程当中建好的Struts框架如图:
然后开始编写一个接口UserDAO.java
package SpringPack;

public interface UserDAO {
  public abstract boolean isValidUser(String name,String password);
}

~写一个类l承该接口UserDAOImp.java
package SpringPack;

import org.springframework.orm.hibernate.support.*;
import net.sf.hibernate.SessionFactory;
import java.util.List;
import Hibernate.hibernateTest;
import net.sf.hibernate.*;

public class UserDAOImp extends HibernateDaoSupport implements UserDAO{

  public boolean isValidUser(String name,String pwd){
    hibernateTest t = null;
    try {
      t = new hibernateTest();
    }
    catch (HibernateException ex) {
      ex.printStackTrace();
    }
    if(t.checkUser(name,pwd)) return true;
    return false;
  }
}

然后~写一个Bean用来映射数据表的字段
package Hibernate;

public class user {
  private String username;
  private String password;
  public user() {
  }

  public void setUsername(String username) {
    this.username = username;
  }

  public void setPassword(String password) {
    this.password = password;
  }

  public String getUsername() {
    return username;
  }

  public String getPassword() {
    return password;
  }
}

~写hibernate.cfg.xml文g用于q接数据库的配置文gQ?br /><?xml version='1.0' encoding='big5'?>
<!DOCTYPE hibernate-configuration
    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
    "
http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd
">

<hibernate-configuration>

    <session-factory>


        <property name="show_sql">true</property>

        <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>

        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>

        <property name="connection.url">jdbc:mysql://localhost/myDB</property>

        <property name="connection.username">root</property>

        <property name="connection.password">test</property>


        <mapping resource="user.hbm.xml"/>

    </session-factory>

</hibernate-configuration>


然后下面~写一个描q数据库映射表字D信息的mapping文gUser.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping
    PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
    "
http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd
">

<hibernate-mapping>

    <class name="Hibernate.user" table="user">

        <id name="username" type="string" unsaved-value="null">
            <column name="username" sql-type="varchar(20)" />
            <generator class="uuid.hex"/>
        </id>

        <property name="password" type="string" column="password"/>

    </class>

</hibernate-mapping>
好了现在Hibernate已基本搭建出来了Q下一步我们要用Spring来整合Hibernate 和Struts 操作步骤很简单编写一个applicationContext.xml文g攑֜站点的根目录卛_:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"
http://www.springframework.org/dtd/spring-beans.dtd
">
<beans>
  <bean name="/loginAction"
    class="StrutsPack.LoginAction"
    singleton="false">
  </bean>
</beans>
要整合Strutsq要在Struts-config.xml文g中做一些修改如?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "
http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd
">
<struts-config>
  <form-beans>
    <form-bean name="loginActionForm" type="StrutsPack.LoginActionForm" />
  </form-beans>
  <action-mappings>
    <action  name="loginActionForm" path="/loginAction" scope="session" type="org.springframework.web.struts.DelegatingActionProxy" validate="false">
      <forward name="Success" path="/success.jsp" />
      <forward name="Failure" path="/Failure.jsp" />
    </action>
  </action-mappings>
  <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
    <set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" />
  </plug-in>
</struts-config>
好了现在q要~写一个Hibernate的辅助文件如?
package Hibernate;

import net.sf.hibernate.*;
import net.sf.hibernate.cfg.*;
import java.util.List;
import java.util.ListIterator;

public class hibernateTest {
  Session session;
  public hibernateTest()
  throws HibernateException{
    SessionFactory factory=new Configuration().configure().buildSessionFactory();
     session=factory.openSession();


  }
  public boolean checkUser(String name,String pwd){
  List count = null;
  try {
    Query q = session.createQuery(
        "select count(*) from user where username=? and password=?");
    q.setString(1, name);
    q.setString(2, pwd);
    count = q.list();
  }
  catch (HibernateException ex) {
    ex.printStackTrace();
  }
  ListIterator list=count.listIterator();
  Integer s=(Integer)list.next();
  if(s.intValue() > 0 ) return true;
  return false;
  }
}

然后可以在LoginAction.java中调用了LoginAction.java文g如下:
package StrutsPack;

import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.Action;
import SpringPack.*;

public class LoginAction
    extends Action {
  private static final String SUCCESS="Success";
  private static final String FAILURE="Failure";

  private UserDAO userdao=new UserDAOImp();

  public ActionForward execute(ActionMapping mapping,
                               ActionForm actionForm,
                               HttpServletRequest servletRequest,
                               HttpServletResponse servletResponse) {
    LoginActionForm loginform = (LoginActionForm) actionForm;

    if(userdao.isValidUser(loginform.getUsername(),loginform.getPassword())){
    return mapping.findForward(SUCCESS);
    }
    return mapping.findForward(FAILURE);
  }

  public UserDAO getUserDAO() {
    return userdao;
}
public void setUserDAO(UserDAO userDAO) {
  this.userdao = userDAO;
}

}
xJB开发一个简单的SSHq束了感觉是两个字麻烦!q是使用Eclispe开发方?下面是具体的path:



]]>
Spring 框架?/title><link>http://www.aygfsteel.com/hayun/articles/spring2.html</link><dc:creator>?/dc:creator><author>?/author><pubDate>Sun, 05 Nov 2006 12:19:00 GMT</pubDate><guid>http://www.aygfsteel.com/hayun/articles/spring2.html</guid><wfw:comment>http://www.aygfsteel.com/hayun/comments/79252.html</wfw:comment><comments>http://www.aygfsteel.com/hayun/articles/spring2.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/hayun/comments/commentRss/79252.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/hayun/services/trackbacks/79252.html</trackback:ping><description><![CDATA[Spring 是一个开源框Ӟ是ؓ(f)了解决企业应用程序开发复杂性而创建的。框架的主要优势之一是其分层架构,分层架构允许(zhn)选择使用哪一个组Ӟ同时?J2EE 应用E序开发提供集成的框架? <p>  在这由三部分组成的 Spring pd 的第 1 部分中,我将介绍 Spring 框架。我先从框架底层模型的角度描q该框架的功能,然后讨Z个最有趣的模块:(x)Spring 面向斚w~程QAOPQ和控制反{ QIOCQ?容器。接着用几个示例演C?IOC 容器在典型应用程序用例场景中的应用情c(din)这些示例还成为本pd后面部分q行的展开式讨论的基础Q在本文的后面部分,介l?Spring 框架通过 Spring AOP 实现 AOP 构造的方式?/p><p>  <strong>Spring 框架</strong></p><p>  Spring 框架是一个分层架构,?7 个定义良好的模块l成。Spring 模块构徏在核心容器之上,核心容器定义了创建、配|和理 bean 的方式,如图 1 所C?br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115976650.gif" /><br />l成 Spring 框架的每个模块(或组Ӟ都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下Q?</p><p>  ?<strong>核心容器</strong>Q核心容器提?Spring 框架的基本功能。核心容器的主要lg?BeanFactoryQ它是工厂模式的实现。BeanFactory 使用控制反{ QIOCQ?模式应用程序的配置和依赖性规范与实际的应用程序代码分开?br />  ?<strong>Spring 上下?/strong>QSpring 上下文是一个配|文Ӟ?Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电(sh)子邮件、国际化、校验和调度功能?br />  ?<strong>Spring AOP</strong>Q通过配置理Ҏ(gu),Spring AOP 模块直接面向方面的~程功能集成C Spring 框架中。所以,可以很容易地?Spring 框架理的Q何对象支?AOP。Spring AOP 模块为基?Spring 的应用程序中的对象提供了事务理服务。通过使用 Spring AOPQ不用依?EJB lgQ就可以声明性事务管理集成到应用E序中?br />  ?<strong>Spring DAO</strong>QJDBC DAO 抽象层提供了有意义的异常层次l构Q可用该l构来管理异常处理和不同数据库供应商抛出的错误消息。异常层ơ结构简化了错误处理Qƈ且极大地降低了需要编写的异常代码数量Q例如打开和关闭连接)。Spring DAO 的面?JDBC 的异帔R从通用?DAO 异常层次l构?br />  ?<strong>Spring ORM</strong>QSpring 框架插入了若q个 ORM 框架Q从而提供了 ORM 的对象关pdP其中包括 JDO、Hibernate ?iBatis SQL Map。所有这些都遵从 Spring 的通用事务?DAO 异常层次l构?br />  ?<strong>Spring Web 模块</strong>QWeb 上下文模块徏立在应用E序上下文模块之上,为基?Web 的应用程序提供了上下文。所以,Spring 框架支持?Jakarta Struts 的集成。Web 模块q简化了处理多部分请求以?qing)将h参数l定到域对象的工作?br />  ?strong> Spring MVC 框架</strong>QMVC 框架是一个全功能的构?Web 应用E序?MVC 实现。通过{略接口QMVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText ?POI?/p><p>  Spring 框架的功能可以用在Q?J2EE 服务器中Q大多数功能也适用于不受管理的环境。Spring 的核心要Ҏ(gu)Q支持不l定到特?J2EE 服务的可重用业务和数据访问对象。毫无疑问,q样的对象可以在不同 J2EE 环境 QWeb ?EJBQ、独立应用程序、测试环境之间重用?</p><p><br /></p><img src ="http://www.aygfsteel.com/hayun/aggbug/79252.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/hayun/" target="_blank">?/a> 2006-11-05 20:19 <a href="http://www.aygfsteel.com/hayun/articles/spring2.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用SpringLq接数据?/title><link>http://www.aygfsteel.com/hayun/articles/spring1.html</link><dc:creator>?/dc:creator><author>?/author><pubDate>Sun, 05 Nov 2006 10:44:00 GMT</pubDate><guid>http://www.aygfsteel.com/hayun/articles/spring1.html</guid><description><![CDATA[今天有一些时间学?fn)新技术感到很兴奋!!<br />学习(fn)Spring两个C拜?l于感到Ҏ(gu)着无穷的魅?!好了闲话说开始学?fn)Spring框架!!<br />先打开Eclipse然后新徏一个J2EE工程,本hq接的是MS SQLServer2000数据?Tomcat5.0<br />如图1:<br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115875617.bmp" /><br />然后配置q接数据库的文gbean.xml可以起别的名字,q里我就?fn)惯?br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115718691.jpg" /><br /><br />好了最后开始编写conn.javaE序q样?Spring框架可以连接数据库?<br /><br /><img src="http://www.bokeo.net/UploadFiles/2006-11/115308791.jpg" /><br /><img src ="http://www.aygfsteel.com/hayun/aggbug/79238.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/hayun/" target="_blank">?/a> 2006-11-05 18:44 <a href="http://www.aygfsteel.com/hayun/articles/spring1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ӡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ұ</a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʮ</a>| <a href="http://" target="_blank">«Ϫ</a>| <a href="http://" target="_blank">Ƹ</a>| <a href="http://" target="_blank">۳</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˳</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˳</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">괨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">γ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">ͭɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">dz</a>| <a href="http://" target="_blank">е</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʯ</a>| <a href="http://" target="_blank">ʻ</a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>