---恢复内容开始---

首先 新闻发布会结合了JSP里的Servlet和request对象,response对象还有使用session对象和cookie对象跟踪用户信息等等。。。。。

列表

登陆

这是在Servlet里面写的 LoginServlet 登陆方法

 private ServletRequest session;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { try {
BaseDao dd=new BaseDao();
String uname=request.getParameter("uname");
String upwd=request.getParameter("upwd");
String sql="select * from user where userName=? and userPwd=?";
Object [] prams={uname,upwd};
ResultSet flag=dd.executeSelect(sql, prams);
if(flag.next())
{
HttpSession session=request.getSession();
session.setAttribute("unamesession", uname);
Cookie cookie=new Cookie("unamesession",uname);
cookie.setMaxAge(**);
response.addCookie(cookie);
//out.print("<script type='text/javascript'>"+"alert('成功登陆!')");
request.getRequestDispatcher("/newspages/admin.jsp").forward(request, response);
}
else
{
response.sendRedirect("/index.jsp");
}
} catch (SQLException e) {
e.printStackTrace();
}
}

这是在jsp主页面上写的跳转

   <form action="LoginServlet"  method="doPost">
<label> 登录名 </label>
<input type="text" name="uname" value="" class="login_input" />
<label> 密&#;&#;码 </label>
<input type="password" name="upwd" value="" 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>

登陆完跳转

接下来是  添加

这是在impl包里的NewsDaoimpl.java获取所有返回的方法

     //添加
public boolean Add(News news) {
String sql="INSERT INTO news ( ntid ,ntitle ,nauthor ,ncreatedate ,npicpath ,ncontent ,nmodifydate ,nsummary ) VALUES (?,?,?,?,?,?,?,?)";
Object [] prams={news.getNtid(),news.getNtitle(),news.getNauthor(),news.getNcreatedate(),news.getNpicpath(),news.getNcontent(),news.getNmodifydate(),news.getNsummary()};
boolean flag=executeUpdate(sql,prams);
closeAll();
return flag;
}

这个是添加的Servlet类

 public class AddServlet extends HttpServlet {
public AddServlet() {
super();
}
public void destroy() {
super.destroy(); }
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if(request.getMethod().equals("GET"))
{
request.getRequestDispatcher("newspages/news_add.jsp").forward(request, response);
}
else
{
String path=request.getContextPath();
String Basepath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+"/";
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
HttpSession session=request.getSession();
boolean flag=false;
try {
List<News> list=(List<News>) FormUtil.assembleObjectList(request, News.class);
News news= list.get(); news.setNtid(request.getParameter("ntid"));
news.setNtitle(request.getParameter("ntitle"));
news.setNauthor(request.getParameter("nauthor"));
news.setNcreatedate(request.getParameter("nsummaryTime"));
news.setNpicpath(request.getParameter("file"));
news.setNcontent(request.getParameter("ncontent"));
NewsDaoimpl dao=new NewsDaoimpl();
flag=dao.Add(news);
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(flag)
{
response.sendRedirect(path+"/newspages/admin.jsp");
}
else
{
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
}
} }

接下来这个是添加的jsp

  <form action="<%=request.getContextPath()%>/AddServlet" method="post">
<p>
<label> 主题 </label>
<select name="ntid">
<%--
<c:forEach var="item" items="${typelist} }">
<option value=""> ${item.ntname} </option>
</c:forEach>
--%> <option value="">选择</option>
<option value=''> 国内 </option>
<option value=''> 国际 </option>
<option value=''> 军事 </option>
<option value=''> 体育 </option>
<option value=''> 娱乐 </option>
<option value=''> 社会 </option>
<option value=''> 财经 </option>
<option value=''> 科技 </option>
<option value=''> 健康 </option>
<option value=''> 汽车 </option>
<option value=''> 教育 </option>
<option value=''> 房产 </option>
<option value=''> 家居 </option>
<option value=''> 旅游 </option>
<option value=''> 文化 </option>
<option value=''> 其他 </option>
</select>
</p>
<p>
<label> 标题 </label>
<input name="ntitle" type="text" class="opt_input" />
</p>
<p>
<label> 作者 </label>
<input name="nauthor" type="text" class="opt_input" />
</p>
<p>
<label> 时间 </label>
<%--<textarea name="nsummary" cols="" rows=""></textarea>--%>
<input id="meeting" type="date" value="2015-11-10" name="nsummaryTime"/>
</p>
<p>
<label> 内容 </label>
<textarea name="ncontent" cols="" rows=""></textarea>
</p>
<p>
<label> 上传图片 </label> <input name="file" type="file" class="opt_input" />
</p>
<input name="action" type="hidden" value="addnews"/>
<input type="submit" value="提交" class="opt_sub" action="NewsAddServlet" method="doPost" />
<input type="reset" value="重置" class="opt_sub" />
</form>

添加主题

这是在impl包里的NewsDaoimpl.java获取所有返回的方法

 //添加主题
@Override
public boolean Addtype(Type type) {
String sql="INSERT INTO TYPE(ntname) VALUES(?)";
Object [] prams={type.getNtname()};
boolean flag=executeUpdate(sql, prams);
closeAll();
return flag;
}

这是添加主题的Servlet类

 public class TypezhuAddServlet extends HttpServlet {

     public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if(request.getMethod().equals("GET"))
{
request.getRequestDispatcher("newspages/news_add.jsp").forward(request, response);
}
else
{
String path=request.getContextPath();
request.setCharacterEncoding("UTF-8");
boolean flag=false;
try {
List<Type> list=(List<Type>) FormUtil.assembleObjectList(request, Type.class);
Type type=list.get();
type.setNtname(request.getParameter("ntname"));
NewsDaoimpl dao=new NewsDaoimpl();
flag=dao.Addtype(type);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
if(flag)
{
response.sendRedirect(path+"/newspages/admin.jsp");
}
else
{
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
}
} }

添加主题的jsp

  <div id="opt_area">
<h1 id="opt_type"> 添加主题: </h1>
<form action="<%=request.getContextPath()%>/TypezhuAddServlet" method="post" onsubmit="return check()"> <p>
<label> 主题名称 </label>
<input name="ntname" type="text" class="opt_input" id="tname"/>
</p>
<input name="action" type="hidden" value="addtopic"/>
<input type="submit" value="提交" class="opt_sub" />
<input type="reset" value="重置" class="opt_sub" />
</form>
</div>
</div>

动态加载新闻主题和新闻分页

这是在impl包里的NewsDaoimpl.java获取所有返回的方法

     //分页查询
public List<News> selectNews() {
QueryRunner query=new QueryRunner(); String sql="SELECT * FROM news WHERE nid LIMIT 3";
List<News> list=null;
try {
list = query.query(getConnection(), sql,new BeanListHandler<News>(News.class));
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
/*
* 根据新闻类型编号查询新闻
*/
public List<News> selectNewsByTypeid(int tid) {
QueryRunner query=new QueryRunner();
String sql="select * from news where ntid=?";
List<News> list=null;
try {
list = query.query(getConnection(), sql, new BeanListHandler<News>(News.class),tid);
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}

这是分页和动态主题的Servlet

 public class TypeServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
NewsDaoimpl dao=new NewsDaoimpl();
List<Type> list = dao.type();
request.setAttribute("typelist",list); String date= request.getParameter("tid");
if(date!=null && date.equals(""))
{
int tid=Integer.parseInt(date);
NewsDaoimpl newsdao=new NewsDaoimpl();
List<News> listdao=newsdao.selectNewsByTypeid(tid);
request.setAttribute("newslist", listdao);
}
else
{
NewsDaoimpl topdao=new NewsDaoimpl();
List<News> newslist=topdao.selectNews();
request.setAttribute("newslist", newslist);
} request.getRequestDispatcher("/index.jsp").forward(request, response);
} }

主页的jsp

 <div class="main">
<div class="class_type"> <img src="data:images/class_type.gif" alt="新闻中心" /> </div>
<div class="content">
<ul class="class_date">
<li id='class_month'> <c:forEach var="item" items="${typelist}">
<a style="color:pink;" href='${pageContext.request.contextPath}/TypeServlet?tid=${item.ntid}'>
${item.ntname}
</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.ncreatedate }</span></li>
</c:forEach>
<p align="right"> 当前页数:[/]&nbsp; <a href="#">下一页</a> <a href="#">末页</a> </p>
</ul>
</div>

待续、、

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

  1. JSP丶新闻发布会系统

    新闻发布会 项目所需要的一些实现类 servlet 工具类 1.实现登录功能 前端界面的代码 <form action="<%=path %>/LonginServlet& ...

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

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

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

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

  4. JSP新闻发布系统

    1.主页面 1.1登录 1.2    分页 2.注销 3.代码如下 package cn.news.dao.impl; import java.sql.SQLException; import org ...

  5. JSP新闻显示

    MYSQL数据库创建新闻表,用户登陆时使用SERVLET获取用户名,效验通过后直接跳转新闻列表页面,JSP使用EL显示新闻列表 1.首先创建数据库及用户.新闻表 CREATE DATABASE /*! ...

  6. 爬虫技术 -- 进阶学习(十)网易新闻页面信息抓取(htmlagilitypack搭配scrapysharp)

    最近在弄网页爬虫这方面的,上网看到关于htmlagilitypack搭配scrapysharp的文章,于是决定试一试~ 于是到https://www.nuget.org/packages/Scrapy ...

  7. 【技术贴】大型发布会现场的WiFi网络应该如何搭建?

    WiFi网络的部署要远远比一般人想象的复杂,不是说放上几十个AP带宽就自动增加几十倍,恰恰相反,简单放几十个AP带宽会由于AP之间的竞争而 迅速使带宽下降为几乎不可用.实际上这个问题完全可以写一本书了 ...

  8. 网易新闻页面信息抓取 -- htmlagilitypack搭配scrapysharp

    最近在弄网页爬虫这方面的,上网看到关于htmlagilitypack搭配scrapysharp的文章,于是决定试一试~ 于是到https://www.nuget.org/packages/Scrapy ...

  9. 大型发布会现场的 Wi-Fi 应该如何搭建(密集人群部署wifi抗干扰)?

    原文连接: http://www.zhihu.com/question/20890194 WiFi网络的部署要远远比一般人想象的复杂,不是说放上几十个AP带宽就自动增加几十倍,恰恰相反,简单放几十个A ...

随机推荐

  1. Css动画形式弹出遮罩层,内容区上下左右居中于不定宽高的容器中

    <!DOCTYPE html> <html> <head> </head> <body id="body"> <! ...

  2. 最佳的 14 个免费的响应式 Web 设计测试工具

    一旦你决定要搭建一个网站就应该已经制定了设计标准.你认为下一步该做什么呢?测试!我使用“测试”这个词来检测你网站对不同屏幕和浏览器尺寸的响应情况.测试在响应式网页设计的过程中是很重要的一步.如果你明白 ...

  3. Unity3d copy gameobject from one scene to another

    scene-copy-game-objects-from-one-scene-to-anotherhttp://forum.unity3d.com/threads/scene-copy-game-ob ...

  4. 再战江湖。vuforia 初试

    AR 里发现一个可用的项目  vuforia,  试着用用. 也是在很久不写博客后(以前全在百度博客上) 再次写

  5. php 使用curl模拟登录discuz以及模拟发帖

    <?php$discuz_url = 'http://127.0.0.1/discuz/';//论坛地址$login_url = $discuz_url .'logging.php?action ...

  6. Calculator(补)

    MyGitHub 刚刚开始时确实是连题目都看不懂= =,从第二行的新建类开始,就不知题目所云.所以我的困难比很多同学都要 开始得早一些--从题目第二行开始. 准确的说,当我按照题目要求新建了一个sca ...

  7. PHP浮点数计算

    涉及到计算 和金额交易 使用bc系列函数 高精度计算 不会有0.57不精确的问题

  8. appcan.slider.js探索

    1:-moz代表firefox浏览器私有属性 -ms代表IE浏览器私有属性 -webkit代表chrome.safari私有属性 2:定义新模块:appcan.define(name,function ...

  9. Windows Phone 10如何借Windows 10的东风

    距微软发布Windows Phone 7已经四年多了,WinPhone的市场份额一直萎糜不前.去年微软收购诺基亚,如特洛伊木马般戏剧,却没有挽救WinPhone,甚至出现下滑,已经不足3%,已经基本被 ...

  10. F2工作流引擎Web层全新扁平化UI上线

    特点:引入Bootstrap开源UI样式和fontawesome图标集 扁平化样式使用界面更舒服,按钮主题可快速定义更换,对于集成到业主系统UI图标更加丰富. 以下截取部分图片展示,更多请联系作者登录 ...