ssh配置
来源:互联网 发布:淘宝客文案 编辑:程序博客网 时间:2024/05/23 00:07
一.配置pojo(javaBean)
1.配置hibernate的映射文件:
<hibernate-mappingpackage="com.oracle.struts.model.pojos" auto-import="true">
<class name="User"table="users" catalog="bbs">
<id name="id"type="java.lang.Integer">
<column name="userId"/>
<generatorclass="native" />
</id>
<property name="username"type="java.lang.String">
<columnname="username" length="20" not-null="true">
<comment>用户账户</comment>
</column>
</property>
<property name="password"type="java.lang.String">
<columnname="password" length="20" not-null="true">
<comment>账户密码</comment>
</column>
</property>
</class>
</hibernate-mapping>
2. pojo.hbm.xml(可注解)-------------
@Entity
@Table(name="Users")
public class User {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
private String username;
private String pswd;
public User() {
super();
// TODO Auto-generated constructor stub
}
二.配置hibernate的cxf.xml文件
--链接数据库配置
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/bbs
</property>
<propertyname="connection.username">root</property>
<propertyname="connection.password">root</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
--打印控制台的sql语句和自动生成table
<property name="show_sql">true</property>
<propertyname="format_sql">true</property>
<propertyname="hbm2ddl.auto">none</property> //是否利用hibernate生成数据库表
--关联映射文件
<mappingclass="com.oracle.strutsdemo.model.javabeans.User" /> 注解
<mapping resource="com/oracle/struts/model/pojos/User.hbm.xml"/>通过映射文件
三.通过bean生成数据库文件
<property name="hbm2ddl.auto">create</property>
四.配置Spring
1.注解--> @Component(value="userAction") Spring的注解声明:实现控制反转(依赖注入)
定义依赖其他的类:提供set方法
AOP:dao-->service--->action(每一个都需要配置@Component) 依赖关系
2.Spring(applicationContext.xml)配置文件:
(注意:需要在每一个dao中注册需要(增,删,改)事务:
/*事物处理*/
@Transactional(propagation=Propagation.REQUIRED)
public User login(User user);
@Transactional(propagation=Propagation.REQUIRED)
public int register(User user);
@Transactional(propagation=Propagation.REQUIRED)
public int update(User user);
)
<!—0.声明spring的AOP事务管理器 -->
<tx:annotation-driven
transaction-manager="transactionManager">
</tx:annotation-driven>
<!-- 1.声明哪些包里面的组件要被spring工厂自动装配和注入依赖组件 -->
<context:component-scanbase-package="com.oracle.struts.model.dao"></context:component-scan>
<context:component-scanbase-package="com.oracle.struts.service"></context:component-scan>
<context:component-scan base-package="com.oracle.struts.model.actions"></context:component-scan>
<!-- 2.声明hibernate的sessionFactory交给spring托管 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean>
<!-- 3.声明spring的事务管理器bean组件 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
五.Struts
0.先在web.xml中配置
<!-- 需要在web.xml配置struts开始工作,其实就是配置一个过滤器 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
1.配置具体的action操作跳转
注解的方式:
@ParentPackage(value="struts-default")//struts注解
@Namespace(value="/")
@Action(value="UserAction")
@Results(
{
@Result(location="/index.jsp"),
@Result(name="fail",location="/login.jsp"),
@Result(name="registerFail",location="/register.jsp"),
@Result(name="registerSucess",location="/index.jsp")
}
)
配置的方式:
<packagename="user" namespace="/"extends="struts-default">
<interceptors>
<!-- 定义自己写的拦截器 -->
<interceptor name="userMD5" class="com.oracle.strutshibernate.control.interceptor.UserInfoInterceptor"></interceptor>
</interceptors>
<action name="UserAction"
class="com.oracle.strutshibernate.model.actions.UserAction">
<resultname="loginSuccess">/index.jsp</result>
<resultname="loginFails">/login.jsp</result>
<resultname="registerSucess">/login.jsp</result>
<!-- 引用拦截器 -->
<interceptor-refname="defaultStack"></interceptor-ref>
<interceptor-ref name="userMD5">
</interceptor-ref>
</action>
</package>
2.struts.xml配置 :
<!-- constant 可以覆盖掉 在 struts.properties文件里的配置 -->
<constant name="struts.i18n.encoding"value="UTF-8"></constant>
<!-- 配置开发模式启用 -->
<constant name="struts.devMode"value="false"></constant>
<!-- 配置自动加载配置文件 -->
<constant name="struts.configuration.xml.reload"value="true />
<!-- 启用Action动态方法调用 -->
<constant
name="struts.enable.DynamicMethodInvocation"value="true">
</constant>
<!-- 将Struts bean的交给spring 管理-->
<constant name="struts.objectFactory"value="spring"></constant>
- SSH配置
- ssh 配置
- ssh 配置
- ssh配置
- SSH 配置
- SSH配置
- SSH配置
- ssh配置
- ssh 配置
- ssh配置
- SSH 配置
- ssh配置
- ssh配置
- ssh配置
- SSH配置
- ssh配置
- SSH 配置
- SSH配置
- bzoj2144 跳跳棋 二分+lca
- STL之list容器
- 仿Android 5.0按钮点击效果
- 孩子们的游戏(圆圈中最后剩下的数)
- C语言人物背包属性0815
- ssh配置
- 1004. Counting Leaves (30)-PAT甲级真题(bfs,dfs,树的遍历,层序遍历)
- sgu 143 Long Live the Queen 树状DP
- UVA-1587
- 2568. 【NOIP2011模拟9.17】地铁建设 (Standard IO)
- 省市县多级联动
- JavaScript学习笔记(一)——核心语法
- SDUT OJ数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- HDJ 1856 More is better