连接数据库
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import org.apache.catalina.User;
import com.official.bean.Doc;
import com.official.bean.Permission;
import com.official.bean.Users;
public class DBUtil {
//数据库URL和账号密码
private static final String connectionURL="jdbc:mysql://127.0.0.1:3306/doc-system?useUnicode=true&characterEncoding=GB18030&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true";
private static final String username="root";
private static final String password="root";
//数据库连接
public static Connection getConnection()
{
try {
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection(connectionURL,username,password);
} catch (Exception e) {
// TODO: handle exception
System.out.println("数据库连接失败");
e.printStackTrace();
return null;
}
}
public static void closeAll(Connection connection,PreparedStatement statement,ResultSet rSet)
{
try {
if(connection!=null)
connection.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
try {
if(statement!=null)
statement.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
try {
if(rSet!=null)
rSet.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
//关闭connection和preparedstatement
public static void closePart(Connection connection,PreparedStatement statement)
{
try {
if(connection!=null)
connection.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
try {
if(statement!=null)
statement.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
//某表的增删改查
public static ArrayList<Doc> getDoces(String type)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql;
System.out.println(type);
if(type.equals("receive"))
{
sql="select * from doc_list where status=0 or status=2 or status=3 or status=6 or status=7 or status=-1 and deletestatus=0";
}
else if(type.equals("send"))
{
sql="select * from doc_list where status=1 or status=4 or status=5 or status=8 or status=9 or status=10 and deletestatus=0";
}
else if(type.equals("delete"))
{
sql="select * from doc_list where deletestatus=1";
}
else {
sql="select * from doc_list";
}
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
doc.setDeletestatus(rSet.getInt("deletestatus"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
//登录时验证数据库中账户是否存在
public static boolean log_isExist(Users user)
{
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try {
con=getConnection();
String sql_query="select * from users where username = ‘"+user.getUsername()+"‘ and password = ‘"+user.getPassword()+"‘ and status != 0";
System.out.println(sql_query);
pstmt=con.prepareStatement(sql_query);
rs=pstmt.executeQuery();
if(rs.next()==false)
{
System.out.println("用户名或密码错误");
return false;
}
else
{
System.out.println("用户名及密码正确");
return true;
}
}
catch (SQLException e) {
System.out.println("未连接");
e.printStackTrace();
}
finally {
closeAll(con, pstmt, rs);
}
return false;
}
//增加公文
public static boolean add_doc(Doc doc)
{
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try {
con=getConnection();
String sql="insert into doc_list(title,owner,receiver,time,status,result,place,deletestatus,callback) values(?,?,?,?,?,?,?,?,?)";
pstmt=con.prepareStatement(sql);
pstmt.setString(1, doc.getTitle());
pstmt.setString(2, doc.getOwner());
pstmt.setString(3, doc.getReceiver());
pstmt.setString(4, doc.getTime());
pstmt.setInt(5, doc.getStatus());
pstmt.setInt(6, doc.getResult());
pstmt.setString(7, doc.getPlace());
pstmt.setInt(8, 0);
pstmt.setInt(9, 0);
pstmt.executeUpdate();
return true;
}
catch (SQLException e) {
System.out.println("注册失败");
e.printStackTrace();
}
finally {
closeAll(con, pstmt, rs);
}
return false;
}
//删除数据
public static boolean delete_user(Users user)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="delete from users where id="+user.getId();
System.out.println(sql);
pstmt=con.prepareStatement(sql);
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static boolean update_userstatus(Users user)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update users set status = ? where id = ?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, user.getStatus());
pstmt.setInt(2, user.getId());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static boolean update_user(Users user)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update users set username=?,password=?,job=? where id = "+user.getId();
pstmt=con.prepareStatement(sql);
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getJob());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
@SuppressWarnings("resource")
public static boolean sendDoc(int id)
{
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rSet=null;
int status=-1;
int newstatus=-1;
String receiver="";
try {
con=DBUtil.getConnection();
String sql_query="select * from doc_list where id="+id;
pstmt=con.prepareStatement(sql_query);
rSet=pstmt.executeQuery();
if(rSet.next())
{
status=rSet.getInt("status");
}
switch (status) {
case 0:
newstatus=1;
receiver="副厂长";
break;
case 2:
newstatus=5;
receiver="厂长";
break;
case 3:
newstatus=4;
receiver="部门";
break;
case 6:
newstatus=8;
receiver="部门和副厂长";
break;
case 7:
newstatus=9;
receiver="部门和副厂长";
break;
case 8:
newstatus=10;
receiver="部门";
break;
default:
System.out.println("公文状态有误!");
break;
}
String sql_update="update doc_list set status = ? where id = ?";
pstmt=con.prepareStatement(sql_update);
pstmt.setInt(1, newstatus);
pstmt.setInt(2, id);
pstmt.executeUpdate();
return true;
}
catch (SQLException e) {
System.out.println("数据库信息更新失败");
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static ArrayList<Doc> getDocesByCase(String type,String value)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="";
System.out.println(type);
if(type.equals("title"))
{
sql="select * from doc_list where title=‘"+value+"‘";
}
else if(type.equals("owner"))
{
sql="select * from doc_list where owner=‘"+value+"‘";
}
else if(type.equals("receiver"))
{
sql="select * from doc_list where receiver=‘"+value+"‘";
}
else if(type.equals("result"))
{
sql="select * from doc_list where result=‘"+value+"‘";
}
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static ArrayList<Doc> getCheckedorNot(String type)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="";
System.out.println(type);
if(type.equals("notchecked"))
{
sql="select * from doc_list where status=1";
}
else
{
sql="select * from doc_list where status!=1 and status!=0 and status!=-1";
}
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static ArrayList<Doc> getFcheckedorNot(String type)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="";
if(type.equals("checked"))
{
sql="select * from doc_list where status=6 or status=7";
}
else
{
sql="select * from doc_list where status=5";
}
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static ArrayList<Doc> getReceivedByUser(String type,Users user)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="";
if(type.equals("received"))
{
sql="select * from doc_list where owner=? and status=10";
}
else
{
sql="select * from doc_list where owner=? and status!=10";
}
preparedStatement=connection.prepareStatement(sql);
preparedStatement.setString(1, user.getUsername());
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setTime(rSet.getString("time"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static Doc getDocById(Doc doc)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="select * from doc_list where id="+doc.getId();
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
if(rSet.next())
{
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
doc.setTipplace(rSet.getString("tipplace"));
doc.setFtipplace(rSet.getString("tipfplace"));
return doc;
}
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static boolean checked_change(Doc doc)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
String sql_update="update doc_list set status = ?,result = ?,receiver = ?,tipplace = ? where id = ?";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql_update);
preparedStatement.setInt(1, doc.getStatus());
preparedStatement.setInt(2, doc.getResult());
preparedStatement.setString(3, doc.getReceiver());
preparedStatement.setString(4, doc.getTipplace());
preparedStatement.setInt(5, doc.getId());
preparedStatement.executeUpdate();
return true;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return false;
}
public static boolean fchecked_change(Doc doc)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
String sql_update="update doc_list set status = ?,result = ?,receiver = ?,tipfplace = ? where id = ?";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql_update);
preparedStatement.setInt(1, doc.getStatus());
preparedStatement.setInt(2, doc.getResult());
preparedStatement.setString(3, doc.getReceiver());
preparedStatement.setString(4, doc.getFtipplace());
preparedStatement.setInt(5, doc.getId());
preparedStatement.executeUpdate();
return true;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return false;
}
public static boolean formatDoc(Doc doc)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
String sql_update="update doc_list set status = ? where id = ?";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql_update);
preparedStatement.setInt(1, doc.getStatus());
preparedStatement.setInt(2, doc.getId());
preparedStatement.executeUpdate();
return true;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return false;
}
public static boolean ReceiveDoc(Doc doc)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
String sql_update="update doc_list set status = ?,callback = 1 where id = ?";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql_update);
preparedStatement.setInt(1, 10);
preparedStatement.setInt(2, doc.getId());
preparedStatement.executeUpdate();
return true;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return false;
}
public static ArrayList<Doc> getDocByTime(Doc doc1,Doc doc2)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from doc_list where time between ? and ?";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
preparedStatement.setString(1,doc1.getTime());
preparedStatement.setString(2, doc2.getTime());
rs=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rs.next())
{
Doc doc=new Doc();
doc.setId(rs.getInt("id"));
doc.setTitle(rs.getString("title"));
doc.setTime(rs.getString("time"));
doc.setOwner(rs.getString("owner"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static ArrayList<Doc> getAllDoc()
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from doc_list";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
rs=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rs.next())
{
Doc doc=new Doc();
doc.setId(rs.getInt("id"));
doc.setTitle(rs.getString("title"));
doc.setTime(rs.getString("time"));
doc.setOwner(rs.getString("owner"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static ArrayList<Users> getAllUser()
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from users";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
rs=preparedStatement.executeQuery();
ArrayList<Users> list=new ArrayList<>();
while(rs.next())
{
Users user=new Users();
user.setId(rs.getInt("id"));
user.setUsername(rs.getString("username"));
user.setPassword(rs.getString("password"));
user.setPermissionId(rs.getInt("permissionId"));
user.setJob(rs.getString("job"));
user.setStatus(rs.getInt("status"));
list.add(user);
}
return list;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static Users getUserById(Users user)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from users where id="+user.getId();
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
rs=preparedStatement.executeQuery();
Users user1=new Users();
if(rs.next())
{
user1.setId(rs.getInt("id"));
user1.setUsername(rs.getString("username"));
user1.setPassword(rs.getString("password"));
user1.setPermissionId(rs.getInt("permissionId"));
user1.setStatus(rs.getInt("status"));
user1.setJob(rs.getString("job"));
}
return user1;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static ArrayList<Permission> getPermission(Permission permission)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from permission where id="+permission.getId();
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
rs=preparedStatement.executeQuery();
ArrayList<Permission> list=new ArrayList<>();
while(rs.next())
{
Permission permission1=new Permission();
permission1.setId(rs.getInt("id"));
permission1.setPermission(rs.getInt("permission"));
list.add(permission1);
}
return list;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static boolean deletePermission(Permission permission)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="delete from permission where id="+permission.getId();
System.out.println(sql);
pstmt=con.prepareStatement(sql);
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static boolean updatePermission(Permission permission1,Permission permission2)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update permission set permission = ? where id = ? and permission = ?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, permission2.getPermission());
pstmt.setInt(2, permission1.getId());
pstmt.setInt(3, permission1.getPermission());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static boolean updatePwd(Users user)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update users set password = ? where username = ?";
pstmt=con.prepareStatement(sql);
pstmt.setString(1, user.getPassword());
pstmt.setString(2, user.getUsername());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static Users getUserByUsername(Users user)
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rs=null;
String sql="select * from users where username=‘"+user.getUsername()+"‘";
try {
connection=getConnection();
preparedStatement=connection.prepareStatement(sql);
rs=preparedStatement.executeQuery();
Users user1=new Users();
if(rs.next())
{
user1.setId(rs.getInt("id"));
user1.setPermissionId(rs.getInt("permissionId"));
System.out.println(user1.getPermissionId());
}
return user1;
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally {
closePart(connection, preparedStatement);
}
return null;
}
public static boolean deleteDoc(Doc doc)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update doc_list set deletestatus = ? where id = ?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, doc.getDeletestatus());
pstmt.setInt(2, doc.getId());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static ArrayList<Doc> getCall()
{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet rSet=null;
try {
connection=getConnection();
String sql="select * from doc_list where callback=1";
preparedStatement=connection.prepareStatement(sql);
rSet=preparedStatement.executeQuery();
ArrayList<Doc> list=new ArrayList<>();
while(rSet.next())
{
Doc doc=new Doc();
doc.setId(rSet.getInt("id"));
doc.setTitle(rSet.getString("title"));
doc.setOwner(rSet.getString("owner"));
doc.setTime(rSet.getString("time"));
doc.setReceiver(rSet.getString("receiver"));
doc.setStatus(rSet.getInt("status"));
doc.setResult(rSet.getInt("result"));
doc.setPlace(rSet.getString("place"));
doc.setDeletestatus(rSet.getInt("deletestatus"));
doc.setCallback(rSet.getInt("callback"));
list.add(doc);
}
return list;
} catch (SQLException e) {
// TODO: handle exception
e.printStackTrace();
}
finally {
closeAll(connection, preparedStatement, rSet);
}
return null;
}
public static boolean setCallOver(Doc doc)
{
Connection con=null;
PreparedStatement pstmt=null;
try {
con=getConnection();
String sql="update doc_list set callback = ? where id = ?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, 0);
pstmt.setInt(2, doc.getId());
pstmt.executeUpdate();
return true;
}
catch(SQLException e)
{
e.printStackTrace();
}
finally {
closePart(con, pstmt);
}
return false;
}
public static void main(String[] args) {
//getConnection();
}
user
public class Doc {
private int id;
private String tipplace;
private String ftipplace;
private int deletestatus;
private int callback;
public int getCallback() {
return callback;
}
public void setCallback(int callback) {
this.callback = callback;
}
public int getDeletestatus() {
return deletestatus;
}
public void setDeletestatus(int deletestatus) {
this.deletestatus = deletestatus;
}
public String getFtipplace() {
return ftipplace;
}
public void setFtipplace(String ftipplace) {
this.ftipplace = ftipplace;
}
public String getTipplace() {
return tipplace;
}
public void setTipplace(String tipplace) {
this.tipplace = tipplace;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
private String title;
private String owner;
private String time;
private String receiver;
private int status;
private int result;
private String place;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getOwner() {
return owner;
}
public void setOwner(String owner) {
this.owner = owner;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getReceiver() {
return receiver;
}
public void setReceiver(String receiver) {
this.receiver = receiver;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getResult() {
return result;
}
public void setResult(int result) {
this.result = result;
}
public String getPlace() {
return place;
}
public void setPlace(String place) {
this.place = place;
}
}
package com.official.bean;
public class Permission {
private int id;
private int permission;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getPermission() {
return permission;
}
public void setPermission(int permission) {
this.permission = permission;
}
}
public class Users {
private int id;
private String username;
private String password;
private int permissionId;
private int status;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
private String job;
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 int getPermissionId() {
return permissionId;
}
public void setPermissionId(int permissionId) {
this.permissionId = permissionId;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
}
界面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<title>登录</title>
<style type="text/css">
*{
padding:0px;
margin:0px;
}
.header{
width:100%;
height:120px;
background-color:gray;
text-align:center;
}
.container{
width:100%;
height:780px;
position:relative;
background-color:blue;
}
.login{
width:500px;
height:auto;
background-color:white;
position:absolute;
top:200px;
left:500px;
border-radius:8px;
}
label{
float:left;
width:100px;
margin-top:7px;
margin-right:5px;
}
.form-control{
width:60%;
}
.logtip{
padding-top:20px;
padding-bottom:20px;
border-bottom:2px solid red;
text-align:center;
}
.form-group{
margin-left:40px;
margin-top:40px;
}
.btn{
height:50px;
width:100px;
float:left;
border-radius:10px;
}
.logbtn{
margin-right:20px;
}
.btnbag{
margin-left:140px;
margin-right:140px;
height:50px;
overflow:hidden;
margin-top:30px;
margin-bottom:40px;
}
</style>
</head>
<body>
<div class="header"><h2>河北金力集团公文流转系统</h2></div>
<div class="container">
<div class="login">
<h2 class="logtip">登录</h2>
<form action="login_do" method="post">
<div class="form-group">
<label for="username">用户名</label>
<input type="text" class="form-control" id="username" name="username">
</div>
<div class="form-group">
<label for="password">密码</label>
<input type="password" class="form-control" id="password" name="password">
</div>
<div class="btnbag">
<input type="button" class="btn btn-primary logbtn" onclick="login()" value="登录">
<input type="button" class="btn btn-primary mangbtn" onclick="entermang()" value="进入管理">
</div>
</form>
</div>
</div>
<div class="footer"></div>
</body>
<script>
function login()
{
var username=$("#username").val();
var password=$("#password").val();
if(username==""||password=="")
alert("请将信息填写完整!");
else
{
$.post(
"login_do",
{username:username,
password:password},
function(data){
if(data=="yes")
{
alert("成功登陆!");
window.location="mainpage.jsp";
}
else
alert("用户名或密码错误!或用户已被暂停使用!");
},
"text"
);
}
}
function entermang()
{
var username=$("#username").val();
var password=$("#password").val();
if(username==""||password=="")
alert("请将信息填写完整!");
else
{
$.post(
"login_do",
{username:username,
password:password},
function(data){
if(data=="yes")
{
alert("成功登陆!");
window.location="backmainpage.jsp";
}
else
alert("用户名或密码错误!或用户已被暂停使用!");
},
"text"
);
}
}
</script>
</html>
<%@page import="com.official.bean.Users"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<title>Insert title here</title>
</head>
<body>
<div>
<table class="table table-hover table-striped table-bordered table-sm" id="resultshow">
<tr>
<th>用户编号</th>
<th>用户名</th>
<th>密码</th>
<th>用户权限ID</th>
<th>用户职位</th>
<th>用户状态</th>
<th>操作</th>
<th>操作</th>
<th>操作</th>
<th>操作</th>
</tr>
<%ArrayList<Users> list=(ArrayList<Users>)request.getAttribute("list");%>
<c:forEach var="l" items="<%=list %>" varStatus="i">
<tr>
<td id="id${i.index+1 }">${l.getId() }</td>
<td>${l.getUsername() }</td>
<td>${l.getPassword() }</td>
<td>${l.getPermissionId() }</td>
<td>${l.getJob() }</td>
<td id="status${i.index+1 }">${l.getStatus() }</td>
<td><a href="#" onclick="edit(${i.index+1})">编辑</a></td>
<td><a href="getAllUser" onclick="pause(${i.index+1})">暂停\释放</a></td>
<td><a href="#" onclick="editPermission(${i.index+1})">权限管理</a></td>
<td><a href="" onclick="deleteitem(${i.index+1})">删除</a></td>
</tr>
</c:forEach>
</table>
</div>
</body>
<script>
function edit(i)
{
var id=$("#id"+i).text();
window.location="editUserInfo?id="+id;
}
function pause(i)
{
var msg ="确认暂停/释放 此用户权限?";
if (confirm(msg)==true){
var id=$("#id"+i).text();
var status=$("#status"+i).text();
var method="pause";
$.post(
"users_do",
{
id:id,
status:status,
method:method
},
function(data)
{
if(data=="no")
alert("操作失败!");
else
{
alert("操作成功!");
}
},
"text"
);
}
}
function deleteitem(i)
{
var msg ="确认删除?";
if (confirm(msg)==true){
var id=$("#id"+i).text();
var method="delete";
$.post(
"users_do",
{
method:method,
id:id
},
function(data)
{
if(data=="no")
alert("操作失败!");
else
{
alert("删除成功!");
//window.location="getAllUser";
}
},
"text"
);
}
}
function editPermission(i)
{
var id=$("#id"+i).text();
window.location="editPermission?id="+id;
}
</script>
</html>
<%@page import="com.official.bean.Doc"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<title>Insert title here</title>
</head>
<body>
<%
Cookie[] cookies=request.getCookies();
String value="";
if(cookies!=null){
System.out.println("cookie的长度为:"+cookies.length);
for(int i=0;i<cookies.length;i++)
{
if(cookies[i].getName().equals("username"))
{
value=cookies[i].getValue();
break;
}
}
}
%>
<div>
<nav class="navbar navbar-expand-sm bg-light">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#" onclick="showreceived()">已签收公文</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" onclick="shownotreceived()">未签收公文</a>
</li>
</ul>
</nav>
</div>
<div>
<table class="table table-hover table-striped table-bordered table-sm">
<tr>
<th>公文编号</th>
<th>公文标题</th>
<th>发送时间</th>
<th>公文状态</th>
<th>审核结果</th>
<th>操作</th>
</tr>
<%ArrayList<Doc> list=(ArrayList<Doc>)request.getAttribute("list");%>
<c:forEach var="l" items="<%=list %>" varStatus="i">
<tr>
<td id="id${i.index+1 }">${l.getId() }</td>
<td><a href="showSug?id=${l.getId()}">${l.getTitle() }</a></td>
<td>${l.getTime() }</td>
<td id="status${i.index+1 }">${l.getStatus() }</td>
<td>${l.getResult() }</td>
<td><a href="#" onclick="doreceived(${i.index+1})">签收</a></td>
</tr>
</c:forEach>
</table>
</div>
</body>
<script>
function showreceived()
{
window.location="getReceivedorNot?type=received&user=<%=value %>";
}
function shownotreceived()
{
window.location="getReceivedorNot?type=notreceived&user=<%=value%>";
}
function doreceived(index)
{
var status=$("#status"+index).text();
if(status==10)
alert("该公文已签收!");
else if(status!=8&&status!=9&&status!=4)
alert("无法签收该公文!因为该公文还未审签!");
else
{
var id=$("#id"+index).text();
$.post(
"doReceived",
{
id:id
},
function(data){
if(data=="yes")
{
alert("签收成功!");
window.location="getReceivedorNot?user=<%=value%>&type=notreceived"
}
else
alert("签收失败!");
}
);
}
}
</script>
</html>
<%@page import="com.official.bean.Doc"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<title>Insert title here</title>
<style>
.form-group{
width:40%;
float:left;
margin-top:30px;
}
label{
width:28%;
float:left;
margin-top:5px;
margin-left:5px;
}
.form-control{
width:67%;
}
.btn{
width:150px;
height:40px;
border:0px;
border-radius:5px;
background-color:orange;
color:black;
margin-left:auto;
margin-top:28px
}
</style>
</head>
<body>
<div>
<div class="form-group">
<label for="type">请输入查询时间段:</label>
<input type="text" class="form-control" id="begin" placeholder="(格式:yyyy-MM-dd hh:mm:ss)">
</div>
<div class="form-group">
<label for="type">---------------></label>
<input type="text" class="form-control" id="end" placeholder="(格式:yyyy-MM-dd hh:mm:ss)">
</div>
<div>
<input type="button" class="btn" value="查询" onclick="query()">
</div>
</div>
<div>
<table class="table table-hover table-striped table-bordered table-sm" id="resultshow">
<tr>
<th>公文编号</th>
<th>公文标题</th>
<th>发送时间</th>
<th>发送机构</th>
</tr>
<%ArrayList<Doc> list=(ArrayList<Doc>)request.getAttribute("list"); %>
<c:forEach var="l" items="<%=list %>" varStatus="i">
<tr>
<td id="id${i.index+1 }">${l.getId() }</td>
<td><a href="showSug?id=${l.getId()}">${l.getTitle() }</a></td>
<td>${l.getTime() }</td>
<td>${l.getOwner() }</td>
</tr>
</c:forEach>
</table>
</div>
</body>
<script type="text/javascript">
function query()
{
var begin=$("#begin").val();
var end=$("#end").val();
if(begin==""||end=="")
alert("请将查询条件补充完整!");
else
{
$.post(
"queryByTime",
{
begin:begin,
end:end
},
function(data)
{
$("#resultshow").empty();
$("#resultshow").append("<tr><th>公文编号</th><th>公文标题</th><th>发送时间</th><th>发送机构</th></tr>");
for(var i=0;i<data.length;i++)
{
$("#resultshow").append("<tr id=‘"+i+"‘></tr>");
$("#"+i).append("<td>"+data[i].id+"</td>");
$("#"+i).append("<td>"+data[i].title+"</td>");
$("#"+i).append("<td>"+data[i].time+"</td>");
$("#"+i).append("<td>"+data[i].owner+"</td>");
}
},
"json"
);
}
}
</script>
</html>
方法
package com.official.servlet;
import java.io.IOException;
import java.util.ArrayList;
import java.util.logging.ConsoleHandler;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.official.bean.Permission;
import com.official.bean.Users;
import com.official.util.DBUtil;
/**
* Servlet implementation class login_do
*/
@WebServlet("/login_do")
public class login_do extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String username=request.getParameter("username");
String password=request.getParameter("password");
Users user=new Users();
user.setUsername(username);
user.setPassword(password);
if(DBUtil.log_isExist(user))
{
Cookie cookie=new Cookie("username", username);
cookie.setPath("/");
//设置存活时间
cookie.setMaxAge(60*60*24);
response.addCookie(cookie);
Users users=DBUtil.getUserByUsername(user);
int pid=users.getPermissionId();
Cookie cookie2=new Cookie("pid", Integer.toString(pid));
cookie2.setPath("/");
cookie2.setMaxAge(60*60*24);
response.addCookie(cookie2);
response.getWriter().write("yes");
}
else
{
response.getWriter().write("no");
}
}
}
文件 流转
原文:https://www.cnblogs.com/kongfanbing/p/12014475.html