SSH整合之用户登录(全注解)

SSH整合之用户登录(全注解)

开发步骤
  1. 创建web工程
  2. 导入整合需要的jar包
  3. 创建实体类
  4. 创建DAO类
  5. 创建Service类
  6. 创建Action类
  7. 创建JSP页面
  8. 配置web.xml
  9. 配置application.xml
  10. 配置struts.xml
创建web工程
导入整合需要的jar包
创建实体类
package com.zhang.domain;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="user")
public class User {

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Integer id;

    private String name;

    private String passw;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassw() {
        return passw;
    }

    public void setPassw(String passw) {
        this.passw = passw;
    }


}
创建DAO类
package com.zhang.dao;

import javax.annotation.Resource;

import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Repository;

@Repository("dao")
public class UserDao extends HibernateTemplate{
    @Resource(name="sf")
    public void setSessionFactory(SessionFactory sessionfactory){
        super.setSessionFactory(sessionfactory);
    } 
}
创建Service类
package com.zhang.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.zhang.dao.UserDao;
import com.zhang.domain.User;

@Service("userservice")
public class UserService {
    @Autowired
    UserDao dao;

    public List getUser(User user){
        List<User> list = dao.findByExample(user);
        return list;
    }
}
创建Action类
package com.zhang.action;

import java.util.List;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.springframework.beans.factory.annotation.Autowired;

import com.zhang.domain.User;
import com.zhang.service.UserService;

@Namespace("/")
@Results({
    @Result(name="success",location="/pages/success.jsp"),
    @Result(name="fail",location="/pages/fail.jsp")
})
@Action("user")
public class UserAction {

    public User user;


    public User getUser() {
        return user;
    }


    public void setUser(User user) {
        this.user = user;
    }
    @Autowired
    UserService userservice;

    public String execute(){

        List<User> list = 

                userservice.getUser(getUser());
        if(list.isEmpty())
            return "fail";
        else
            return "success";

    }
}
创建JSP页面

login.jsp

<form action="user" method="post">
        <input type="text" name="user.name">
        <input type="text" name="user.passw">
        <input type="submit" value="提交">

    </form>

success.jsp

this is successs page <br/>

fail.jsp

this is fail page <br/>
配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
    <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>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>        
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping> 

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>



</web-app>
配置applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
   http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/aop 
   http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
   http://www.springframework.org/schema/tx 
   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
   http://www.springframework.org/schema/context      
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <context:annotation-config />
    <context:component-scan base-package="com.zhang" />
    <tx:annotation-driven transaction-manager="transactionManager"/>

    <bean name="sf"
        class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
        <property name="dataSource" ref="ds" />

        <!-- 注解扫描 -->
        <property name="packagesToScan">
            <list>
                <value>com.zhang.*</value>
            </list>
        </property>

        <property name="schemaUpdate">  
            <value>true</value>  
        </property>  

        <property name="hibernateProperties">
            <value>
                hibernate.dialect=org.hibernate.dialect.MySQLDialect
                hibernate.show_sql=false
                hbm2ddl.auto=update
            </value>
        </property>
    </bean>    

    <bean name="ds"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="jdbc:mysql://localhost:3306/tmall_ssh?characterEncoding=UTF-8" />
        <property name="username" value="root" />
        <property name="password" value="123456" />
    </bean>

    <!-- 配置事务管理器(声明式的事务) -->  
    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
        <property name="sessionFactory" ref="sf"></property>  
    </bean>  

</beans>
配置struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
  <constant name="struts.i18n.encoding" value="UTF-8"></constant>
  <constant name="struts.objectFactory" value="spring"/>
  <package name="basicstruts" extends="struts-default">

 </package>
</struts>
运行即可
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值