用JSP做后台管理系统

突然很开心,紧张了好几天的项目终于不那么赶了。

我是一个比别人慢半拍的人,所以一定要比别人多付出一点努力。

今天在进行添加新闻的时候发现可扩展的还有好多,可惜也只能是脑子里有东西,但都不知道应该怎么做(但愿不会忘,等下次学习之后还会回过头来做这件事)。

顺便说一下今天犯的错误。

在进行添加新闻时,纠结了好久。

/**
  * 获取从页面读取的数据
  * @param request
  * @return 单个新闻信息
  * @throws UnsupportedEncodingException
  */
 private News getNews(HttpServletRequest request) throws UnsupportedEncodingException {
  request.setCharacterEncoding("UTF-8");
  //读取用户选择的是哪一个主题ID
  String id = request.getParameter("topic");
  //把值转换为Int类型 传给 Topic实体类
  Topic topic = new Topic(Integer.parseInt(id));
  //标题
  String title = request.getParameter("title");
  //作者
  String author = request.getParameter("author");
  //摘要
  String summary = request.getParameter("summary");
  //内容
  String ncontent = request.getParameter("ncontent");
  
  News news = new News(topic,title,author,summary,ncontent); 
  
  return news;
 }

/**
  * 添加新闻
  */
 public void addNews(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
  boolean b = ndi.addNews(getNews(request));  
  if( b){
   selectNews(request, response);
   }else{
    request.setAttribute("errorInfo", "新闻添加失败!");
    request.getRequestDispatcher("error.jsp").forward(request, response); 
   }
 }

下面详细说为什么获取错了。

第一步:

  我先手动从数据库往表中添加数据,结果发现可以。但是不能执行。

第二步:

  我修改了要添加进news实体类中的值,改为了字符串而并非是页面的内容,结果上面显示说,有FK约束。还是不能执行。

第三步:

  终于知道错误所在了,好开心。然后就把我之前建错的外键约束给改了。

  t_news : id ==t_topic : id ---> t_news : tid == t_topic : id

  因为我把两个表中的主键给关联一起了,所以就不能执行。改成新闻表中的主题ID列与主题表中的ID列相对应就可以了。结果发现还是不能执行。

第四步:

  又跳转到页面上,发现我竟然没有给下拉菜单个名字!!

  唉,真是粗心大意的我啊。然后想起了教员所谓的要让程序找到你的下拉框才能给值,于是就给了id。

  这样应该就行了吧。结果还是不行。

第五步:

  头昏昏的,看来我是真的做不出来了。然后叫了教员问为什么。他就看了一眼,说了句:

  <%--想要获取select的value值,就需要给他一个名字。切记:用name而非id,ID是唯一的,适用于CSS,name利于后台获取 --%>

  呵呵,原来如此,不是id而是name啊。
     <select name="topic">
      <c:forEach items="${topicList}" var="topic">      
       <option value="${topic.id}" />${topic.tname}
      </c:forEach>    
      </select>

这个项目终于能见睁眼了,好开心。看着自己创造出来的东西,真心幸福。

最后告诫我一句,调试真的很重要,英语单词真的很重要,课外知识真的很重要。

时间: 2024-11-06 20:23:08

用JSP做后台管理系统的相关文章

今天在做后台管理系统的无刷新左侧菜单,遇到两个难题:(CTE递归查询、ashx+Session[])

今天在做后台管理系统的无刷新左侧菜单,遇到两个难题: 1.怎么将数据表中的菜单项按树形结构进行层次性的查询?群里有人给我指点说用CTE递归查询,我还没搞明白. 2.要做左侧导航栏的根据用户权限的无刷新加载时,要用到AJAX,那么就要在ashx一般处理程序中取得Session["UserID"]的值,但是ashx中是不能用Session的,之后找到一篇文章,指出:若要在ashx中使用Session和Request需要引入一个接口. 在ashx文件中使用Session和QueryStrin

struts+hibernate+jsp开发MedicineManager医疗后台管理系统源代码下载

原文:struts+hibernate+jsp开发MedicineManager医疗后台管理系统源代码下载 源代码下载地址:http://www.zuidaima.com/share/1550463451368448.htm MedicineManager医疗管理系统 代码没有建库脚本,会报错

程序员把地府后台管理系统做出来了,还有3.0版本!

第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员-- 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找"人"开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求. 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员也是虎躯一震,本来想拒绝的,不过做不完就不让回去,而且,貌似这也是他报仇的好机会啊! 产品同学也被勾下来了.. 第二场:

[创业公司做前端]一、后台管理系统

首先,后台管理系统一定要前后端分离,一方面提高前端技术选型的灵活性,再一方面也可以解决后端人员使用模版语言的麻烦.其次,后台管理系统都会有较复杂的数据交互和组件化的需求,react是个合适的选择,mvvm的框架要么概念太多.要么模版语言偏命令式.选择了react之后,再搭配antd,将会是个很好的选择.react-bootstrap也是不错的选择,但是相对于antd来讲,它的组件较少,需要自己封装一些通用组件.数据流方面,慎用redux,在大部分的场景,使用组件state比用redux来的简单快

淘淘商城_0200_搭建后台管理系统

后台管理系统工程搭建 项目是maven项目,Maven的工程类型: 1.war包工程:web工程 2.Jar包工程:java工程,打完是一个jar包 3.Pom工程:父工程,聚合工程 ,这两个一般合起来用,pom工程即做父工程,又做聚合工程来聚合其他模块,以方便执行maven命令. 1.1   父工程的搭建 打开myeclipse 右键new ,new一个maven project,勾选create a simple project 修改pom文件: <project xmlns="htt

从零开始实现放置游戏(九)——实现后台管理系统(7)地图选择控件

前面做了地图怪物的添加,删除,查询等功能.但添加怪物的时候,需要选择怪物所在地图.前几张的源代码中,我忘了把这部分改回去,所以如果想要成功添加,需要自己改一下html界面,手动填写怪物所在地图的ID.然而,我们配置的时候,地图ID并不是固定的,而是数据库自增的.所以这里最好做成一个弹窗,点击后弹出一个地图列表,让我们手动选择怪物所在地图. 本章我们就实现这样一个弹窗控件,实现对地图的选择.后面如果有选择怪物,选择装备等需求,都可照猫画虎.整个过程的流程大致如下: 实现步骤 首先,我们给弹出的地图

Vue2 后台管理系统解决方案

Vue2 后台管理系统解决方案 linshuai 1 天前 基于Vue.js 2.x系列 + Element UI 的后台管理系统解决方案. github地址:lin-xin/manage-system demo地址:manage-system 前言 之前在公司用了Vue + Element组件库做了个后台管理系统,基本很多组件可以直接引用组件库的,但是也有一些需求无法满足.像图片裁剪上传.富文本编辑器.图表等这些在后台管理系统中很常见的功能,就需要引用其他的组件才能完成.从寻找组件,到使用组件

构建ASP.NET MVC5+EF6+EasyUI 1.5+Unity4.x注入的后台管理系统(1)-前言与目录(持续更新中...)

前言: 起初写这个框架的时候,可以说在当时来说并不是很流行的设计模式,那是在2012年,面向对象的编程大家都很熟悉, 但是“注入.控制反转(DI,IOC,依赖注入).AOP切面编程”新兴名词 很多人并不知道特别是从事.NET开发的人,至少在当时 是这么样的,但是在今天它们却是非常流行的技术指标,很多大牛也承认,这是主流的开发模式,你们可以从招聘网的技术岗位看出. 我从事过MVC2.0到5.0的相关开发工作,见证了MVC的成熟演变过程,就像本框架一样,设计模式未曾改变,但是代码一直在重 构.我也坚

构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(51)-系统升级

系统很久没有更新内容了,最近花了2个月的时间每天一点点,从原有系统 MVC4+EF5+UNITY2.X+Quartz 2.0+easyui 1.3.4无缝接入 MVC5+EF6+Unity4.x+Quartz 2.3 +easyui 1.4.3. 并以easyui 1.4.3的gray皮肤为基础,升级10个扁平化皮肤 皮肤查看地址 更新的主要目的:新的MVC5特性和更好的性能 记录一下升级过程. 1.除了web层,其他全部提取. 2.新建解决方案.以前命名空间为App.现在更名为Apps. 3.