package com.lx.data;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.lx.entity.User;
import com.lx.data.DBHelper;
import com.mysql.jdbc.Statement;
import com.lx.entity.User;
public class UserDao {
/*
* 测试用户名是否存在
*/
public int isUser(User user){
String sql = "select count(*) from User where username=?";
Connection con= DBHelper.getConnection(); //连接数据库
PreparedStatement pstmt=null; //PreparedStatement表示预编译的SQL语句的对象,SQL语句被预编译并存储在PreparedStatement对象中
ResultSet rs=null; //存储数据库查询结果
int result = 0;
try{
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
rs = pstmt.executeQuery(); //executeQuery()在该PreparedStatement对象中执行SQL查询,并返回该查询生成的ResultSet对象
if(rs.next())
result =rs.getInt(1);
}catch(SQLException e){
e.printStackTrace();
}finally{
DBHelper.close(rs, pstmt, con);
}
System.out.println(user.getUsername());
System.out.println("根据返回的用户名是否为空判定查询的用户是否存在"+result);
return result;
}
/*
* 添加用户
*/
public boolean add(User user){
if(isUser(user)==0){
String sql="insert into user values(?,?,?,?,?,?)";
String[] params = {user.getUsername(),user.getPassword(),user.getSex(),user.getEmail(),user.getAddress(),user.getGarde()};
int count = DBHelper.excuteUpdate(sql, params);
System.out.println(user.getUsername()+user.getPassword());
System.out.println("add");
return count>0;
}
System.out.println("***********");
return false;
}
/*
* 管理员登录
*/
public boolean login(User user){
Connection con=DBHelper.getConnection();
PreparedStatement pstmt = null;
ResultSet rs=null;
int result = 0;
String sql = "select count(*) from user where username=? and password=? and garde='admin'";
try{
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
rs=pstmt.executeQuery();
rs.next();
result = rs.getInt(1);
}catch(SQLException e){
e.printStackTrace();
}finally{
DBHelper.close(rs, pstmt, con);
}
System.out.println(result);
System.out.println("sql");
System.out.println(user.getUsername());
System.out.println(user.getPassword());
return result>0;
}
/*
* 用户登录
*/
public boolean userlogin(User user){
Connection con=DBHelper.getConnection();
PreparedStatement pstmt = null;
ResultSet rs=null;
int result = 0;
String sql = "select count(*) from user where username=? and password=? and garde='user'";
try{
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
rs=pstmt.executeQuery();
rs.next();
result = rs.getInt(1);
}catch(SQLException e){
e.printStackTrace();
}finally{
DBHelper.close(rs, pstmt, con);
}
return result>0;
}
/*
* 此方法返回2个值,一个是用户名,一个是用户密码;主要用于从数据库中获取要显示在userlist.jsp页面用户的信息
* uList 用户集合
* uPwd 用户密码集合
*/
public List<User> getUser(String username,String location){
List<User> userList=new ArrayList<User>();
Connection con= DBHelper.getConnection();
PreparedStatement pstmt=null;
ResultSet rs=null;
String sql="select username,garde from user";
try{
pstmt=con.prepareStatement(sql);
pstmt.setString(1, username);
rs=pstmt.executeQuery();
while(rs.next()){
User u=new User();
u.setUsername(rs.getString("username"));
u.setPassword(rs.getString("garde"));
userList.add(u);
}
}catch(SQLException e){
e.printStackTrace();
}finally{
DBHelper.close(rs, pstmt, con);
}
return userList;
}
/*
* 删除用户
*/
public boolean deleteUser(User user) {
PreparedStatement pstmt = null;
Connection con= DBHelper.getConnection();
if(isUser(user)!=0){
try {
pstmt = con.prepareStatement(
"delete user from user where username=?");
pstmt.setString(1,user.getUsername());
System.out.println(user.getUsername());
int flag = pstmt.executeUpdate();
if (flag == 0) {
return false;
}
} catch (SQLException ex) {
ex.printStackTrace();
return false;
}
System.out.println("deleteuser");
return true;
}
return false;
}
/**
* 查看用户列表
*/
public List<User> UserList(){
List<User> list = new ArrayList<User>();
Connection con = DBHelper.getConnection();
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql="select username,garde from user";
try{
pstmt = con.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()){
User u = new User();
u.setUsername(rs.getString("username"));
u.setGarde(rs.getString("garde"));
list.add(u);}
}
catch(SQLException e){
e.printStackTrace();
}finally{
DBHelper.close(rs, pstmt, con);
}
return list;
}
/**
* 编辑更新用户信息
*/
public boolean editUser(User user){
Connection con = DBHelper.getConnection();
PreparedStatement pstmt = null;
String sql = "update user set password=?,sex=?,email=?,address=?,garde=? where username=?";
try{
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getPassword());
pstmt.setString(2, user.getSex());
pstmt.setString(3, user.getEmail());
pstmt.setString(4, user.getAddress());
pstmt.setString(5, user.getGarde());
pstmt.setString(6, user.getUsername());
String[] params = {user.getPassword(),user.getSex(),user.getEmail(),user.getAddress(),user.getGarde(),user.getUsername()};
int count = DBHelper.excuteUpdate(sql, params);
//pstmt.executeUpdate();
return true;
}
catch(SQLException e){
e.printStackTrace();
}
return false;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
公告发布系统
共72个文件
jpg:18个
class:14个
java:14个
需积分: 34 48 下载量 34 浏览量
2013-11-29
22:05:51
上传
评论 3
收藏 2.2MB RAR 举报
温馨提示
struts+jsp+mysql的公告发布系统
资源推荐
资源详情
资源评论
收起资源包目录
notice.rar (72个子文件)
notice
.project 1KB
.settings
.jsdtscope 500B
org.eclipse.jdt.core.prefs 330B
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.jsdt.ui.superType.name 6B
.mymetadata 291B
WebRoot
newuser.jsp 2KB
success.jsp 557B
adminlogin.jsp 1KB
WEB-INF
web.xml 671B
lib
mysql-connector-java-5.1.7-bin.jar 693KB
classes
com
lx
Action
UserLoginAction.class 2KB
ChangUserAction.class 1KB
UserEditAction.class 725B
LNoticeAction.class 734B
NoticeDelAction.class 1KB
AdminLoginAction.class 2KB
AddNoticeAction.class 2KB
UserDelAction.class 1KB
AddUserAction.class 1KB
data
NoticeDao.class 3KB
DBHelper.class 3KB
UserDao.class 6KB
entity
User.class 2KB
Notice.class 1KB
struts.xml 2KB
index.jsp 827B
META-INF
MANIFEST.MF 36B
userdel.jsp 510B
update.jsp 574B
useredit.jsp 2KB
images
5.jpg 57KB
033.jpg 68KB
01.jpg 128KB
4.jpg 80KB
03.jpg 70KB
04.jpg 44KB
2.jpg 89KB
019.jpg 17KB
10.jpg 137KB
19.jpg 116KB
1.jpg 133KB
05.jpg 111KB
6.jpg 58KB
16.jpg 154KB
7.jpg 143KB
13.jpg 89KB
06.jpg 44KB
08.jpg 63KB
newnotice.jsp 1KB
userlogin.jsp 1KB
noticedel.jsp 493B
noticelist.jsp 1KB
userlist.jsp 2KB
noticeedit.jsp 1KB
.myeclipse
src
com
lx
Action
AdminLoginAction.java 840B
LNoticeAction.java 402B
UserLoginAction.java 912B
AddUserAction.java 760B
AddNoticeAction.java 754B
UserDelAction.java 648B
ChangUserAction.java 622B
UserEditAction.java 466B
NoticeDelAction.java 636B
data
DBHelper.java 2KB
NoticeDao.java 2KB
UserDao.java 7KB
entity
User.java 1KB
Notice.java 690B
struts.xml 2KB
.mystrutsdata 240B
.classpath 556B
共 72 条
- 1
资源评论
cccc130307
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功