第十五讲:15 spring整合S2SH案例代码

1,spring4支持泛型注入,dao层非常简化。User实体类,dao接口,dao实现类,service接口(下载地址:链接:https://pan.baidu.com/s/1PJhLcylNTWcV4nqtikUhKQ 密码:harp)略。
service实现类:

package com.cruise.service.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.cruise.dao.BaseDao;
import com.cruise.entity.User;
import com.cruise.service.UserService;

@Service("userService")
public class UserServiceImpl implements UserService{
      
       @Resource
       private BaseDao baseDao;
      
       @Override
       public void saveUser(User user) {
              baseDao.save(user);
       }

       @Override
       public void updateUser(User user) {
              baseDao.update(user);
       }

       @Override
       public User findUserById(int id) {
              return baseDao.get(User.class, id);
       }

       @Override
       public void deleteUser(User user) {
              baseDao.delete(user);
       }

       @Override
       public List findAllList() {
              return baseDao.find("from User");
       }

       @Override
       public User findUserByNameAndPassword(User user) {
              return baseDao.get("from User u where u.userName=? and u.password=?",new Object[]{user.getUserName(),user.getPassword()});
       }
}
UserAction类
package com.cruise.action;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.interceptor.ServletRequestAware;

import com.cruise.entity.User;
import com.cruise.service.UserService;
import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport implements ServletRequestAware{

       private HttpServletRequest request;
      
       @Resource
       private UserService userService;
      
       private User user;
       private String error;
      
       public User getUser() {
              return user;
       }

       public void setUser(User user) {
              this.user = user;
       }

       public String getError() {
              return error;
       }

       public void setError(String error) {
              this.error = error;
       }

       @Override
       public void setServletRequest(HttpServletRequest request) {
              this.request=request;
       }
      
       public String login()throws Exception{
              HttpSession session=request.getSession();
              User currentUser=userService.findUserByNameAndPassword(user);
              if(currentUser!=null){
                     session.setAttribute("currentUser", currentUser);
                     return SUCCESS;
              }else{
                     error="用后名或者密码错误!";
                     return ERROR;
              }
       }
}
数据库建表

Create Table

CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `password` varchar(20) DEFAULT NULL,
  `userName` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

struts.xml代码:
 
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"  
    "http://struts.apache.org/dtds/struts-2.3.dtd">  
      
 
     
    /User" extends="struts-default">
        user_*" method="{1}" class="com.cruise.action.UserAction">
            /success.jsp
            /index.jsp
        
   

index.jsp代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
<form action="${pageContext.request.contextPath}/User/user_login.action">
userName:<input type="text" name="user.userName" value="${user.userName }"/><br/>
    password:<input type="password" name="user.password" value="${user.password }"><br/>
    <input type="submit" value="login"/><span color="red">${error }span>
form>
body>
html>
success.jsp代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title heretitle>
head>
<body>
欢迎:${currentUser.userName }
body>
html>
代码的目录结构:
15_spring整合S2SH案例代码

猜你喜欢

转载自blog.csdn.net/u010393325/article/details/83747647
今日推荐