📄 webdaoimpl.java
字号:
package com.webcount.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import com.webcount.bean.*;
import com.webcount.database.DataConnection;
public class WebDAOImpl implements WebDAO{
public boolean insertWebInfo(Web instance){ // 更新网站流量信息
boolean re = false;
String query = "";
instance = searchWeb(instance);
if(instance!=null){
System.out.println("issearch:true");
long maxid = getMaxId();
instance.setWebid(maxid);
// 将网站流量在原有基础上加1
instance.setWebcount(instance.getWebcount()+1);
query = "update web set webcount = ? where webid = ?";
Connection conn = DataConnection.getFreeConnection();
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
try{
pstmt.setLong(1,instance.getWebcount());
pstmt.setLong(2,instance.getWebid());
re = DataConnection.execute(pstmt);
}catch(Exception ex){
ex.printStackTrace();
}
}else{
re = false;
System.out.println("issearch:false");
}
return re; // 返回更新结果
}
public Web searchWeb(Web instance){ // 查询指定域名的网站信息
String query = "select * from web where webhost = ?";
Connection conn = DataConnection.getFreeConnection();
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
ResultSet rs = null;
try{
pstmt.setString(1,instance.getWebhost());
rs = DataConnection.getResult(pstmt);
if(rs.next()){
instance.setWebid(rs.getLong("webid"));
instance.setWebcount(rs.getLong("webcount"));
}else{
instance = null;
}
}catch(Exception ex){
ex.printStackTrace();
}finally{
DataConnection.closeResultSet(rs);
DataConnection.closeStatement(pstmt);
}
return instance;
}
public List getWebByMember(Member instance){ // 取得指定用户的网站信息
List weblist = new ArrayList();
Web web = null;
String query = "select * from web where web_memberid = ?";
Connection conn = DataConnection.getFreeConnection();
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
ResultSet rs = null;
try{
pstmt.setLong(1,instance.getMemberid());
rs = DataConnection.getResult(pstmt);
while(rs.next()){
web = new Web();
web.setWebid(rs.getLong("webid"));
web.setWebhost(rs.getString("webhost"));
web.setWebcount(rs.getLong("webcount"));
web.setWeb_memberid(instance.getMemberid());
weblist.add(web);
}
}catch(Exception ex){
ex.printStackTrace();
}
return weblist;
}
public synchronized Web insertWeb(Web instance){ // 新增网站信息
long maxid = getMaxId();
String query = "insert into web(webid,webhost,webcount,web_memberid) values(?,?,?,?)";
Connection conn = DataConnection.getFreeConnection();
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
try{
pstmt.setLong(1,(maxid+1));
pstmt.setString(2,instance.getWebhost());
pstmt.setLong(3,instance.getWebcount());
pstmt.setLong(4,instance.getWeb_memberid());
if(!DataConnection.execute(pstmt)){
instance = null;
}
}catch(Exception ex){
ex.printStackTrace();
}
return instance;
}
private long getMaxId(){ // 取得数据表中最大网站ID
String query = "select max(webid) as maxid from web";
long maxid = 0;
Connection conn = DataConnection.getFreeConnection();
Statement st = DataConnection.getStatement(conn);
ResultSet rs = DataConnection.getResult(st,query);
try{
if(rs.next()){
maxid = rs.getLong("maxid");
}
}catch(Exception ex){
ex.printStackTrace();
}
return maxid;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -