【SSH学习笔记】整合spring3-struts2的小项目(二)

来源:互联网 发布:前端性能优化的方式 编辑:程序博客网 时间:2024/05/21 21:01

接下来开始实现功能

 

操作步骤:

1、创建用户表并添加测试数据

create table users(  userid number(8) primary key,  username nvarchar2(10),  password nvarchar2(10),  birthday date,  flag number(8));
insert into users values(1,'zhangsan','123',to_date('1992-1-1','yyyy-MM-dd'),0);insert into users values(2,'lisi','123',to_date('1992-1-1','yyyy-MM-dd'),0);



2、创建用户实体类

import java.util.Date;public class User {private int userid;private String username;private String password;private Date birthday;private int flag;public int getUserid() {return userid;}public void setUserid(int userid) {this.userid = userid;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public int getFlag() {return flag;}public void setFlag(int flag) {this.flag = flag;}public User() {super();}public User(int userid, String username, String password, Date birthday,int flag) {super();this.userid = userid;this.username = username;this.password = password;this.birthday = birthday;this.flag = flag;}}


 

3、导入Spring3所需JAR包,创建applicationContext.xml并导入数据源

<?xml version="1.0" encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><context:component-scan base-package="com.wyd"/><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><property name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property><property name="url"><value>jdbc:oracle:thin:@localhost:1521:adminwyd</value></property><property name="username"><value>scott</value></property><property name="password"><value>tiger</value></property></bean></beans>


 

4、创建IUserDao接口及其实现类

import java.util.List;public interface IUserDao {List<User> findAll();User isUser(String username);int add(User user);int del(int userid);int update(User user);User getUserById(int userid);}
import java.sql.ResultSet;import java.sql.SQLException;import java.util.List;import javax.annotation.Resource;import javax.sql.DataSource;import org.springframework.dao.DataAccessException;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.jdbc.core.RowMapper;import org.springframework.stereotype.Repository;@Repository("userDao")public class UserDao implements IUserDao {private JdbcTemplate jdbcTemplate;@Resourcepublic void setDataSource(DataSource dataSource) {this.jdbcTemplate = new JdbcTemplate(dataSource);}public List<User> findAll() {List<User> list = (List<User>) this.jdbcTemplate.query("select userid,username,password,birthday,flag from users where flag=0",new RowMapper<User>() {public User mapRow(ResultSet rs, int rowNum)throws SQLException {User user = new User();user.setUserid(rs.getInt("userid"));user.setUsername(rs.getString("username"));user.setPassword(rs.getString("password"));user.setBirthday(rs.getDate("birthday"));user.setFlag(rs.getInt("flag"));return user;}});return list;}public User isUser(String username) {User user01;try {user01 = (User)this.jdbcTemplate.queryForObject("select username,password from users where flag=0 and username = ?", new Object[] { username }, new RowMapper<User>(){public User mapRow(ResultSet rs, int rowNum) throws SQLException {User user = new User();user.setUsername(rs.getString("username"));user.setPassword(rs.getString("password"));return user;}});} catch (DataAccessException e) {user01 = null;}return user01;}public int add(User user) {int count = this.jdbcTemplate.update("insert into users values(?,?,?,?,?)", user.getUserid(), user.getUsername(), user.getPassword(), user.getBirthday(),user.getFlag());return count;}public int del(int userid) {int count = this.jdbcTemplate.update("update users set flag=1 where userid=?", userid);return count;}public int update(User user) {int count = this.jdbcTemplate.update("update users set username=?,password=?,birthday=?,flag=0 where userid=?",user.getUsername(), user.getPassword(), user.getBirthday(), user.getUserid());return count;}public User getUserById(int userid) {final User user = new User();this.jdbcTemplate.queryForObject("select * from users where userid=?", new Object[]{userid}, new RowMapper<User>(){public User mapRow(ResultSet rs, int rowNum) throws SQLException {user.setUserid(rs.getInt("userid"));user.setUsername(rs.getString("username"));user.setPassword(rs.getString("password"));user.setBirthday(rs.getDate("birthday"));user.setFlag(rs.getInt("flag"));return user;}});return user;}}