新闻发布会

项目所需要的一些实现类 servlet 工具类

1.实现登录功能

前端界面的代码

 <form action="<%=path %>/LonginServlet" method="post">
<label> 登录名 </label>
<input type="text" name="uname" value='<%=request.getParameter("uname")==null?"":request.getParameter("uname") %>' class="login_input" />
<label> 密  码 </label>
<input type="password" name="upwd" value='<%=request.getParameter("upwd")==null?"":request.getParameter("upwd") %>' class="login_input" />
<input type="submit" class="login_sub" value="登录" />
<label id="error"> </label>
<img src="data:images/friend_logo.gif" alt="Google" id="friend_logo" />
</form>

登录实现类代码

 public boolean loginGetBool(Admin admin) {
rs= executeSelect("select *from admin where name=? and \"pwd\"=?",admin.getAname(),admin.getApwd());
try {
if(rs.next()){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}

登录servlet

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//接收请求时的编码utf-8
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
String name=request.getParameter("uname");
String pwd=request.getParameter("upwd"); Admin admin=new Admin(name,pwd);
System.out.println(admin.getAname()); AdminDaoImpl adi=new AdminDaoImpl(); String dbn=adi.login(admin); if(dbn!=null){ Cookie cookie=new Cookie("unameCookie",name);
cookie.setMaxAge(**); response.addCookie(cookie); System.out.println("登陆成功!");
HttpSession session= request.getSession();
session.setAttribute("uname", name);
session.setMaxInactiveInterval(*); response.sendRedirect(request.getContextPath()+"/newspages/admin.jsp");
}else{
response.sendRedirect(request.getContextPath()+"/index.jsp");
}
}

2.实现新增新闻

新增实现类方法

 public boolean addNews(News news) {
Date date=new Date();
DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date time = null;
try {
time = format.parse(format.format(date));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} Object[] obj={news.getNauthor(),news.getNcontent(),time,null,news.getNtitle(),news.getNtypeid()}; return executeUpdate("INSERT INTO newsrecord (`nauthor`,`ncontent`,`startTime`,`endUpdateTime`,`ntitle`,`ntypeid`) values(?,?,?,?,?,?)",obj); }

新增servlet

 public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { request.setCharacterEncoding("utf-8");
response.setContentType("text/html; charset=utf-8");
//主题
int ntid=Integer.parseInt(request.getParameter("ntid"));
//标题
String ntitle=request.getParameter("ntitle");
//作者
String nauthor=request.getParameter("nauthor");
//摘要
String nsummary=request.getParameter("nsummary");
//内容
String ncontent=request.getParameter("nauthor");
//上传图片 String file=request.getParameter("file");
NewsWeb news=new NewsWeb(nauthor,ncontent,file,ntitle,ntid,nsummary);
NewsWebDaoImpl nw=new NewsWebDaoImpl(); if(nw.addNewsWeb(news)){
System.out.print("成功!");
request.getSession().setAttribute("xi", "<<script type=\"text/javascript\">+alert(\"新增新闻成功!\") </script>>");
response.sendRedirect(request.getContextPath()+"/newspages/admin.jsp");
// out.print("");
}else{
System.out.print("失败!");
request.getSession().setAttribute("xi", "<<script type=\"text/javascript\">+alert(\"新增新闻失败!\") </script>>");
response.sendRedirect(request.getContextPath()+"/newspages/admin.jsp");
}

新增Servlet

动态显示新闻标题内容
 
动态显示Servlet
 public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
TopicDaoImpl dao=new TopicDaoImpl(); List<NewsType> alltopic=dao.getAllTopic(); request.setAttribute("Topiclist", alltopic);
String data=request.getParameter("tid"); if (data!=null&&!data.equals("")) {
int tid=Integer.parseInt(data); NewDaoImpl topicdao=new NewDaoImpl();
List<News> list = topicdao.getNewsById(tid); request.setAttribute("newsList",list); }else {
//处理新闻相关内容
NewDaoImpl newsDao=new NewDaoImpl();
List<News> newsList = newsDao.getTopNews();
request.setAttribute("newsList", newsList);
}
//转向DoIndexServlet获取数据 //准发到index.jsp
request.getRequestDispatcher("/index.jsp").forward(request, response);
}

动态显示实现类

 public List<NewsType> getAllTopic() {
Connection connection=getConnection();
String sqlString="select typeid,typename from type";
QueryRunner query=new QueryRunner();
List<NewsType> list=null;
try { list=query.query(connection, sqlString, new BeanListHandler<NewsType>(NewsType.class)); System.out.println(list.get().getTypeName());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
} public List<News> getTopNews() {
Connection connection=getConnection();
QueryRunner query=new QueryRunner();
//select * from newsrecord where rownum<=3 orcal查询前三条语句
String sqlString="select * from newsrecord where nid limit 3";
List<News> list=null;
try {
list=query.query(connection, sqlString, new BeanListHandler<News>(News.class));
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}

前端代码

  <div class="content">
<ul class="class_date">
<li id='class_month'>
<c:forEach var="item" items="${requestScope.Topiclist}">
<a style="color:red;font-size:14px;" href='${pageContext.request.contextPath }/DoIndexServlet?tid=${item.typeid}'><!-- 从域中取值 -->
${item.typeName}
</a>
</c:forEach>
</li> </ul>
<ul class="classlist">
<c:forEach var="item" items="${newsList }">
<li><a href='newspages/news_read.jsp'>${item.ntitle }</a><span>${item.startTime } </span></li>
</c:forEach> <p align="right"> 当前页数:[1/2]&nbsp; <a href="/DoIndexServlet">下一页</a> <a href="#">末页</a> </p>
</ul>
</div>
添加新闻主题

新增新闻类型Servlet
 public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { request.setCharacterEncoding("utf-8");
response.setContentType("text/html; charset=utf-8");
String tname=request.getParameter("tname");
NewsType newsType=new NewsType(tname);
NewsTypeDaoImpl ntdi=new NewsTypeDaoImpl();
if (ntdi.addNewsType(newsType)) {
request.getSession().setAttribute("xi", "<<script type=\"text/javascript\">+alert(\"新增新闻类型成功!\") </script>>");
}else{
System.out.println("");
request.getSession().setAttribute("xi", "<<script type=\"text/javascript\">+alert(\"新增新闻类型失败!\") </script>>");
}
response.sendRedirect("/news/util/addnewstype.jsp"); }

新增类型实现类

 public boolean addNewsType(NewsType newsType){
return executeUpdate("insert into type(typename)
values(?)", newsType.getTypeName());
}

  

 

JSP丶新闻发布会系统的更多相关文章

  1. 基于JSP+Servlet新闻发布系统 源码

    开发环境: Windows操作系统开发工具: Eclipse+Jdk+Tomcat+MYSQL数据库 运行效果图:

  2. JSP 新闻发布会

    ---恢复内容开始--- 首先 新闻发布会结合了JSP里的Servlet和request对象,response对象还有使用session对象和cookie对象跟踪用户信息等等..... 列表 登陆 这 ...

  3. News新闻发布系统

            News新闻发布系统分页的实现 1.首先我们要在NewsDAO中创建一个方法,返回List<NewsEntity>集合,其中pageIndex表示当前页,pageSize表 ...

  4. DRP PK 牛腩新闻发布系统

    一.JSP与ASP (1)Web服务器的支持:大多数通用的Web服务器如:Apache.Netscape和Microsoft IIS都支持JSP页面,只有微软本身的Microsoft IIS和Pers ...

  5. 图零直播新闻发布会—TOLINK2.0全面上线

    在网络直播时代和现代信息技术条件下,教务管理正在由传统管理方式向数字化管理模式转变.教务管理创新需要现代信息技术来实现,使得教务管理的质量和效率得到了质的飞跃.图零直播,中国IT在线直播教育引领者,在 ...

  6. 江西省移动物联网发展战略新闻发布会举行-2017年10月江西IDC排行榜与发展报告

    编者按:当人们在做技术创新时,我们在做“外包产业“:当人们在做制造产业,我们在做”服务产业“:江人们在做AI智能时,我们在做”物联网“崛起,即使有一个落差,但红色热土从不缺少成长激情. 本期摘自上月初 ...

  7. JSP开发Web应用系统

    1.动态网站开发基础 1-1:动态网页 a.为什么需要动态网页(当我们需要修改网页内容的时候,都要重新上传一次覆盖原来的页面.而且,制作必须要通过专用的网页制作工具,比如:Dreamweaver.Fr ...

  8. 【NodeJS 学习笔记04】新闻发布系统

    前言 昨天,我们跟着这位大哥的博客(https://github.com/nswbmw/N-blog/wiki/_pages)进行了nodeJS初步的学习,最后也能将数据插入数据库了 但是一味的跟着别 ...

  9. 2016.6.23 PHP实现新闻发布系统主体部分

    1.新闻发布系统的列表: <html><meta http-equiv="Content-Type" content="text/html; chars ...

随机推荐

  1. VIM 及正则表达式

    VIM及正则表达式 一.查找/Search + 统计 1.统计某个关键字 方法是:%s:keyword:&:gn. 其中,keyword是要搜索的关键字,&表示前面匹配的字符串,n表示 ...

  2. 理解Http协议(一)

    本文对Http协议进行了简要的描述,说明了其用途的广泛性:通过代码对Http连接和Http请求消息的发送进行实现,希望能将这些抽象的过程直观的显示出来:最后对HttpURL和Http协议中“资源”这些 ...

  3. Django 创建第一个项目(转)

    转自(http://www.runoob.com/django/django-first-app.html) 前面写了不少python程序,由于之前都是作为工具用,所以命令行就足够了,最近写的测试用例 ...

  4. django 学习点滴

    django连接数据库要安装第三方包,比如mysql的就是 python-mysqldb, 用apt-cache search python-mysql 搜索一下. django的project可以放 ...

  5. 《APUE》第三章笔记(1)

    以下内容是我看<APUE>第二版第三章的笔记,有错还希望指出来,谢谢. unbuffered I/O,跟buffered I/O相对,buffered I/O就是 ISO C标准下的标准输 ...

  6. jQuery实现购物车多物品数量的加减+总价+删除计算

    <?php session_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...

  7. Python中的redis学习笔记

    redis是一个key-value结构的数据库,value的格式可以使string,set,list,map(即python里面的dict),sorted set(有序集合) 1.初始化 1)直接连接 ...

  8. POJ 2406 Power Strings 1961的简化版,kmp的next数组的应用

    题目: http://poj.org/problem?id=2406 跟1961差不多,题解就不写了,一开始理解错题了,导致WA一次. #include <stdio.h> #includ ...

  9. 常见内部函数----Python

    In [10]: test = [1,2,"yes"] ---append(x) 追加到链尾 In [11]: test.append(1) In [12]: test Out[1 ...

  10. 对指定文件生成数字摘要的MD5工具类

    md5特点:压缩性.不可逆性,经常用于传值过程中的值加密或文件加密static char hexdigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', ...