JavaWeb项目之博客系统(三)
2011-06-17 11:17
225 查看
1.整合一下数据库的连接操作
根据以前做新闻发布系统的经验,有关于数据库连接等等处理的内容最好是写一个类Dbhelper或者叫SQLHelper,通过这个类中的各种静态的方法可以很方便的连接数据库,而不用在每次需要的时候自己重复写相同的操作,例如:
之前写的在修改博文之前的查找出要修改的博文的代码:
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
红色部分是连接数据库和获取Dbutils的QueryRunner对象的部分,这部分的内容在很多的servlet中都使用到了,所以可以整合到一个类中,然后调用这个方法
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
调用:
2. JavaScript实现删除提示功能
根据常理,在删除一篇博文之前是要先让用户判断是否真的要删除,以免误删除,这个很好用 JavaScript来实现
只要添加一句 onclick="return confirm('Do you want to delete this blog?')"
例如:
<a href="http://localhost:8080/blog/servlet/DeleteBlogServlet?blogid=<%=blog.getId()%>" onclick="return confirm('Do you want to delete this blog?')">Delete</a>
还有一种方式:其实差不多
先写一个Javascript代码:
然后在删除那里加上 onclick="javascript:return delblog()" 但是我没有成功,呵呵呵,不知道为啥!只好用第一种方式了
根据以前做新闻发布系统的经验,有关于数据库连接等等处理的内容最好是写一个类Dbhelper或者叫SQLHelper,通过这个类中的各种静态的方法可以很方便的连接数据库,而不用在每次需要的时候自己重复写相同的操作,例如:
之前写的在修改博文之前的查找出要修改的博文的代码:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String blogid = request.getParameter("blogid"); DataSource ds = null; try { Context context = new InitialContext(); ds = (DataSource) context.lookup("java:comp/env/jdbc/mysqlds"); QueryRunner qr = new QueryRunner(ds); String sql = "SELECT id,title,content,categoryid from blog where id=" + blogid; List<Blog> bloglist = (List<Blog>) qr.query(sql, new BeanListHandler(Blog.class)); Blog blog = bloglist.get(0); request.setAttribute("blog", blog); request.getRequestDispatcher("/ModifyBlog.jsp").forward(request, response); } catch (Exception e) { e.printStackTrace(); } }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
红色部分是连接数据库和获取Dbutils的QueryRunner对象的部分,这部分的内容在很多的servlet中都使用到了,所以可以整合到一个类中,然后调用这个方法
public class Dbhelper { public static QueryRunner getQueryRunner(){ QueryRunner qr=null; try { //通过在context.xml中设置数据源对象名字,可以获取数据源对象 Context context = new InitialContext(); DataSource ds=(DataSource) context.lookup("java:comp/env/jdbc/mysqlds");//注意:第一个单词是java,而不是jdbc! //DButils的核心类,生成时传递数据源对象给它,这样它自己就可以生成数据库连接对象,并在执行完以后放回到数据池中 qr=new QueryRunner(ds); } catch (Exception e) { e.printStackTrace(); } return qr; } }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
调用:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String blogid=request.getParameter("blogid"); QueryRunner qr=Dbhelper.getQueryRunner(); String sql="SELECT id,title,content,created_time as createTime,categoryid from blog where id="+blogid; try { List<Blog> bloglist=(List<Blog>)qr.query(sql, new BeanListHandler(Blog.class)); Blog blog=bloglist.get(0); request.setAttribute("blog", blog); } catch (Exception e) { e.printStackTrace(); } request.getRequestDispatcher("/DisplayBlog.jsp").forward(request, response); }
2. JavaScript实现删除提示功能
根据常理,在删除一篇博文之前是要先让用户判断是否真的要删除,以免误删除,这个很好用 JavaScript来实现
只要添加一句 onclick="return confirm('Do you want to delete this blog?')"
例如:
<a href="http://localhost:8080/blog/servlet/DeleteBlogServlet?blogid=<%=blog.getId()%>" onclick="return confirm('Do you want to delete this blog?')">Delete</a>
还有一种方式:其实差不多
先写一个Javascript代码:
<script type="text/javascript" language="javascript"> function delblog(){ var message="Do you want to delete this blog?"; if(confirm(massage)==true){ return true; }else{ return false; } } </script>
然后在删除那里加上 onclick="javascript:return delblog()" 但是我没有成功,呵呵呵,不知道为啥!只好用第一种方式了
相关文章推荐
- JavaWeb项目开发案例精粹-第4章博客网站系统-002辅助类及配置文件
- JavaWeb项目开发案例精粹-第4章博客网站系统-003Dao层
- JavaWeb项目开发案例精粹-第4章博客网站系统-005action层
- JavaWeb项目之博客系统(二)下
- node.js开发博客系统---前端项目搭建(一)
- 项目——Blog博客系统数据库设计
- JavaWeb毕业设计项目-足球队管理系统(二)成品展示+业务介绍
- javaWeb项目之图书管理系统(附视频讲解)
- 腾讯云CentOS系统服务器搭建发布Javaweb项目
- javaweb项目搭建ehcache缓存系统
- PHP经典项目案例-(一)博客管理系统4
- 自然语言交流系统 phxnet团队 创新实训 项目博客 (四)
- 自然语言交流系统 phxnet团队 创新实训 项目博客 (七)
- 自然语言交流系统 phxnet团队 创新实训 项目博客 (十一)
- 自然语言交流系统 phxnet团队 创新实训 项目博客 (十三)
- 自然语言交流系统 phxnet团队 创新实训 项目博客 (二)
- JavaWeb毕业设计项目-足球队管理系统(三)功能优化+项目部署
- 博客应用项目之,系统主页及个人主页
- 项目实战(连载):基于Angular2+Mongodb+Node技术实现的多用户博客系统教程(2)