/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package dbutil;
import bean.Accessory;
import bean.Admin;
import bean.Message;
import bean.Module;
import bean.Reply;
import bean.Topic;
import bean.User;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
import java.io.Writer;
import java.sql.Blob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Iterator;
import java.util.TimeZone;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import oracle.jdbc.OracleConnection;
/**
*
* @author Qu Chenhao
*/
public class DBQuirier {
private static Connection getConnection() {
Connection connection = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "system", "wq6811156");
((OracleConnection) connection).setSessionTimeZone(TimeZone.getDefault().getID());
} catch (Exception ex) {
ex.printStackTrace();
}
return connection;
}
public static void quiryBasicInformation(HttpServletRequest request) throws IOException {
Connection connection = getConnection();
ResultSet rs1 = null;
ResultSet rs2 = null;
Statement stmt1 = null;
Statement stmt2 = null;
String sql;
if (connection != null) {
try {
ArrayList<Module> module_list = new ArrayList();
TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai");
GregorianCalendar c = new GregorianCalendar(tz);
stmt1 = connection.createStatement();
stmt2 = connection.createStatement();
sql = "select * from MODULE order by module_name";
rs1 = stmt1.executeQuery(sql);
sql = "select module_name,count(*) as cnt from BBSTOPIC"
+ " where issue_time between to_date('" + c.get(GregorianCalendar.YEAR) + "-"
+ (c.get(GregorianCalendar.MONTH) + 1) + "-" + c.get(GregorianCalendar.DATE)
+ " 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('" + c.get(GregorianCalendar.YEAR) + "-"
+ (c.get(GregorianCalendar.MONTH) + 1) + "-" + c.get(GregorianCalendar.DATE)
+ " 23:59:59','yyyy-mm-dd hh24:mi:ss') group by module_name "
+ "order by module_name";
rs2 = stmt2.executeQuery(sql);
while (rs2.next()) {
String module_name1 = rs2.getString("module_name");
while (rs1.next()) {
Module module = new Module();
String module_name2 = rs1.getString("module_name");
Timestamp module_time = rs1.getTimestamp("module_time");
module.setModule_name(module_name2);
module.setModule_time(module_time);
if (module_name1.equals(module_name2)) {
module.setNumNewTopic(rs2.getInt("cnt"));
module_list.add(module);
break;
} else {
module.setNumNewTopic(0);
module_list.add(module);
}
}
}
while (rs1.next()) {
Module module = new Module();
module.setModule_name(rs1.getString("module_name"));
module.setModule_time(rs1.getTimestamp("module_time"));
module.setNumNewTopic(0);
module_list.add(module);
}
request.setAttribute("module_list", module_list);
sql = "select topic_id,topic_title,issue_time,"
+ "topic_status,author,module_name,cnt from "
+ "(select BBSTOPIC.topic_id,BBSTOPIC.topic_title,BBSTOPIC.issue_time,"
+ "BBSTOPIC.topic_status,BBSTOPIC.author,BBSTOPIC.module_name"
+ ",count(BBSTOPIC.topic_id) as cnt"
+ " from BBSTOPIC,VISITATION_RECORD where "
+ "BBSTOPIC.topic_id = VISITATION_RECORD.topic_id "
+ "group by BBSTOPIC.topic_id,BBSTOPIC.topic_title"
+ ",BBSTOPIC.issue_time,BBSTOPIC.topic_status,BBSTOPIC.author,BBSTOPIC.module_name order by cnt desc) "
+ "where ROWNUM<=10 order by ROWNUM asc";
rs1 = stmt1.executeQuery(sql);
ArrayList<Topic> topic_list = new ArrayList(10);
while (rs1.next()) {
Topic topic = new Topic();
topic.setTopic_id(rs1.getInt("topic_id"));
topic.setIssue_time(rs1.getTimestamp("issue_time"));
topic.setTopic_status(rs1.getString("topic_status").charAt(0));
topic.setAuthor(rs1.getString("author"));
topic.setTopic_title(rs1.getString("topic_title"));
topic.setVisit_cnt(rs1.getInt("cnt"));
topic.setModule_name(rs1.getString("module_name"));
topic_list.add(topic);
}
request.setAttribute("topic_list", topic_list);
connection.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
public static User quiryUserInformation(String username) {
Connection connection = getConnection();
ResultSet rs = null;
Statement stmt = null;
String sql;
try {
stmt = connection.createStatement();
sql = "select * from BBSUSER where username=" + "'" + username + "'";
rs = stmt.executeQuery(sql);
if (rs.next()) {
User user = new User();
user.setUsername(username);
user.setRealname(rs.getString("realname"));
user.setPassword(rs.getString("password"));
user.setBirthday(rs.getDate("birthday"));
user.setEmail(rs.getString("email"));
user.setExperience(rs.getInt("experience"));
Blob blob = rs.getBlob("photo");
user.setPhoto(blob);
user.setWealth(rs.getInt("wealth"));
return user;
}
connection.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
return null;
}
public static boolean insertUser(String username, String realname,
String password, String email, String birthday) {
Connection connection = getConnection();
Statement stmt = null;
String sql = null;
try {
stmt = connection.createStatement();
sql = "insert into BBSUSER(username,realname,password,email";
if (birthday != null) {
sql += ",birthday";
}
sql += ") values('" + username + "','" + realname + "','" + password + "','"
+ email + "'";
if (birthday != null) {
sql += ",to_date('" + birthday + "','yyyy-mm-dd')";
}
sql += ")";
stmt.execute(sql);
connection.commit();
connection.close();
return true;
没有合适的资源?快使用搜索试试~ 我知道了~
bbs.rar_BBS java_bbs_jsp
共163个文件
jsp:32个
css:32个
java:23个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 24 浏览量
2022-09-21
07:57:38
上传
评论
收藏 3.71MB RAR 举报
温馨提示
一个bbs的源代码,并且附有数据库表设计,实现了发帖 删帖 加精等功能
资源推荐
资源详情
资源评论
收起资源包目录
bbs.rar_BBS java_bbs_jsp (163个子文件)
DBQuirier.class 20KB
ControlServlet.class 2KB
User.class 2KB
AdminControlServlet.class 2KB
Topic.class 2KB
MailServlet.class 2KB
SetCharacterEncodingFilter.class 2KB
Message.class 2KB
PhotoServlet.class 2KB
PasswordServlet.class 2KB
RegisterServlet.class 2KB
SearchServlet.class 2KB
NewTopicServlet.class 2KB
DownloadServlet.class 2KB
ModuleServlet.class 2KB
ReplyServlet.class 2KB
TopicServlet.class 2KB
DisplayPhotoServlet.class 2KB
StatisticsServlet.class 2KB
Reply.class 1KB
Accessory.class 1KB
Module.class 1KB
Admin.class 514B
register.css 5KB
register.css 5KB
home.css 4KB
home.css 4KB
modifypassword.css 4KB
modifypassword.css 4KB
admin_login.css 4KB
admin_login.css 4KB
newMessage.css 414B
newMessage.css 414B
topic.css 412B
topic.css 412B
pageination_tag.css 381B
pageination_tag.css 381B
uploadImage.css 377B
uploadImage.css 377B
showMail.css 373B
newTopic.css 373B
showMail.css 373B
newTopic.css 373B
success.css 372B
success.css 372B
search.css 371B
module.css 371B
search.css 371B
module.css 371B
admin.css 370B
error.css 370B
admin.css 370B
error.css 370B
mail.css 368B
mail.css 368B
acer.gif 1KB
acer.gif 1KB
reset.gif 1KB
reset.gif 1KB
land.gif 985B
land.gif 985B
bg_01.gif 79B
bg_01.gif 79B
ojdbc14.jar 1.47MB
jfreechart-1.0.11.jar 1.3MB
standard.jar 312KB
jcommon-1.0.14.jar 301KB
commons-io-1.4.jar 106KB
commons-fileupload-1.2.1.jar 56KB
pager-taglib.jar 46KB
jstl.jar 17KB
jsmartcom_zh_CN.jar 13KB
DBQuirier.java 49KB
AdminControlServlet.java 10KB
MailServlet.java 8KB
ControlServlet.java 6KB
PhotoServlet.java 6KB
NewTopicServlet.java 6KB
StatisticsServlet.java 4KB
RegisterServlet.java 4KB
DownloadServlet.java 4KB
PasswordServlet.java 4KB
ReplyServlet.java 3KB
SearchServlet.java 3KB
ModuleServlet.java 3KB
TopicServlet.java 3KB
DisplayPhotoServlet.java 2KB
SetCharacterEncodingFilter.java 2KB
User.java 2KB
Topic.java 2KB
Message.java 2KB
Reply.java 1KB
Accessory.java 917B
Module.java 878B
Admin.java 393B
login.jpg 60KB
login.jpg 60KB
register.jpg 60KB
register.jpg 60KB
userlogin.jpg 59KB
共 163 条
- 1
- 2
资源评论
Kinonoyomeo
- 粉丝: 76
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功