我是如何从零开始构建一个jsp项目的

最近因为学校有一个课程设计需要完成,都没有时间更新博客了。果然坚持才是最难的。

好了,闲话不说,来看看重点。

我的课题是设计并实现一个网上论坛,具体需要实现的功能有用户注册,用户登录,发帖回帖等功能。

  1. 我是选择用jsp去开发的,所以你得安装java运行环境,我用的是eclipse for EE 版的,至于运行环境的配置这里就不说了,随便百度,GG下都能搞定。
  2. 然后我的jsp要运行在tomcat上,所以你得把tomcat装好,还是去百度或者GG,也都能搞定的。
  3. 准备一个数据库也是当然的了,我用的是sql server 2012,你可以选择用oralce ,mysql等等,对于小项目来说没什么区别。
  4. 然后新建一个数据库,数据名我取的bbs,然后新建一个用户表,表名为bbs_user。表里有姓名,密码,(就弄了简单的两列,知道原理就行)。
  5. 打开eclipse,新建一个Dynamic web project(如果你的eclipse是web版的就会有这个选项,如果不是就找一个或者其它途径解决咯)。
  6. 新建的项目名称就叫bbs了,展开可以看到很多文件夹,建议将jsp文件放在WEB-CONTENT下,(直接点击这个文件夹右键新建jsp File就行。)WEB-CONTENT吗,顾名思义了。就是存放网页内容的。
  7. 然后还有一个src的文件夹,这里面就是存放java文件的,你的servlet文件啊,类方法啊等等(什么事servlet等会再说是干嘛用的,因为我也是不懂,只是说一个操作方法,原理什么的得自行看书咯)
  8. 当你新建一个Jsp文件之后,里面写上表单,表单的提交方法设置好,一般是Post或者get,然后就是表单的action,这个应该填什么呢,就是一个servlet了,比如这样写action="bbsServlet"。当然,此时会报错,因为没有这个bbsServlet啊,不要着急,表单一定要设置好,给每一个input一个name属性,之后的数据获取就是根据这个标识来获取的。然后还得有一个提交按钮吧,这里可以这样<input type="submit" value="提交">,type值一定要是submit,就是提交这个表单的意思,这里的逻辑就是当你填好表单的内容,点击提交之后,这个表单会被提交到bbsServlet中进行处理。
  9. 好了,这里应该来创建bbsServlet了,右键src文件夹,首先可以创建一个包(包的概念和作用熟悉java的应该知道,就不多说了),然后在这个包里面创建一个servlet,命名为bbsServlet,创建好之后进入这个servlet,看代码,你会发现eclipse已经自动为你写好了默认的方法,有一个doGet,还有一个doPost,看到这里大家应该明白了,如果你的表单时get方法提交的,就在doGet里面写处理逻辑,如果是doPost当然就是为了处理post方法传过来的数据了。
  10. 在servlet里面,你可以获取到表单提交过来的数据,然后对这些数据进行处理,一般是存入数据库啊,或者修改数据库相应数据啊,最后一点,它可以在处理完数据之后重定向到另一个页面,比如我做登录,如果传过来的用户名密码在数据库中都确认没有错误,我就可以跳转到登录成功的页面。所以说到这里,你可能明白了这里的这个servlet就是一个数据处理中转站,它接收表单的数据,处理好之后就跳转到该去的页面。
  11. 做好的了上述的所有步骤之后,你就可以尝试来运行你的jsp页面了,选中你要运行的页面,右键Run as 然后选择运行在服务器上,第一次会让你选择服务器,你选中apache tomcat就行,然后是选择tomcat版本,我的是7.0的,就选tomcat 7.0,如果你不记得,可以在本机访问tomcat(怎么访问你在上述安装tomcat时应该已经看过了,就是确认你的tomcat是否安装成功那个),然后就等着它跑起来,如果没有错误,你看到的应该是一个网页页面,内容是你设计的表单,然后你填好你的表单,点击提交之后,服务器获取到你的表单数据,然后处理,处理完会跳转到你需要的页面(如果你有让它跳转的话),然后就可以根据处理结果判断你的整个过程有没有错了
  12. 说到这里,基本上一个简单的注册过程就完成了,至于核心代码,网上有的是,当你明白了这个过程之后,把代码复制一下,自己处理一下,就能明白了。
  13. 再提一下编码的过程中可能会有一些莫名其妙的错误,碰到这种不要着急,静下心来仔细想一下逻辑过程。
  14. 我能说我当时做的时候因为没有导入数据库的jar包而导致那些数据库方法不能用吗,(大写的尴尬,一直学习前端方面的,刚接触后台的写法被坑的有些惨啊)

好了,祝各位初学jsp不懂得怎么构建整个服务的学习顺利了咯,如果有关于这篇篇幅里涉及到的问题可以交流哦(以外的什么原理,框架,啥啥啥的就不要来打我脸了,求放过)

时间: 2024-10-05 19:39:59

我是如何从零开始构建一个jsp项目的的相关文章

从零开始构建一个centos+jdk7+tomcat7的docker镜像文件

从零开始构建一个centos+jdk7+tomcat7的镜像文件 centos7系统下docker运行环境的搭建 准备centos基础镜像 docker pull centos 或者直接下载我准备好的镜像 docker pull registry.cn-hangzhou.aliyuncs.com/repos_zyl/centos:0.0.1 准备jdk7和tomcat7安装包 创建工作目录, mkdir -p /z/docker 准备下载jdk7的tar.gz包http://download.o

从零开始构建一个的asp.net Core 项目

最近突发奇想,想从零开始构建一个Core的MVC项目,于是开始了构建过程. 首先我们添加一个空的CORE下的MVC项目,创建完成之后我们运行一下(Ctrl +F5).我们会在页面上看到"Hello World!". 既然是从零开始构建的项目,我们需要搞明白这个"Hello World!"是从哪里出现的? 点开我们的项目,我们会看到VS为我们生成了两个类,一个是Program.cs 和startup.cs,和一个空文件夹(wwwroot),除此之外VS在也没有为我们多

从零开始构建一个的asp.net Core 项目(二)

接着上一篇博客继续进行.上一篇博客只是显示了简单的MVC视图页,这篇博客接着进行,连接上数据库,进行简单的CRUD. 首先我在Controllers文件夹点击右键,添加->控制器 弹出的对话框中选择miniual Dependencies.在项目的根目录下添加一个Models文件夹,在该文件夹下添加一个Users.cs类.(该类在数据库中对应一张表,表名为Users 里边有三个字段 其中ID是主键,自增的.) public class Users { [Key] public int Id {

【从零开始构建一个MVC+Log4net+KnockOut+EasyUI+FluentData+SQLite的框架】X、登录模块的实现

一.使用ActionFilterAttribute实现权限管理 1.创建一个菜单过滤器类 //构建一个权限菜单过滤器 public class MvcMenuFilter : ActionFilterAttribute { private bool _isEnable = true;//是否开启过滤 public MvcMenuFilter() { _isEnable = true; }//构造函数1,默认开启 public MvcMenuFilter(bool IsEnable) { _isE

Eclipse中将一个android项目当做另外一个android项目的library

1.右击将要被当做library的项目->Properties里面->Android->给Is Library前面的checkbox打上勾->点击Apply->点击OK 2.右击需要library的项目->Properties->Android->点击Add->弹出对话框选择library点击OK->点击Apply->点击OK 将上一个项目作为library添加进来后,会发现在该项目Android Dependencies这个library

如何从零开始搭建一个技术平台?

关键词:技术预研课题,平台设计,应用场景,故事,信息架构,业务流程,数据流程 本文档适用人员:全体研发 提纲: 应用场景其实就是我们的愿景 从应用场景推导出故事 从故事推导出信息架构和业务流程 一,如何从零开始? 如果让你把下面这套技术体系串联起来,从零开始构建一个技术平台,你如何做需求分析呢,在没有产品经理帮助你梳理的情况下? 下面这些系统涵盖了我们研发测试运维日常工作的方方面面: idCenter:它定义用户.用户组.权限.研发测试都有了唯一的身份和权限集合,贯穿所有系统. iDB:数据库自

09_Android中ContentProvider和Sqllite混合操作,一个项目调用另外一个项目的ContentProvider

1.  编写ContentPrivider提供者的Android应用 清单文件 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.itheima28.sqlitedemo" android:versionCode=&qu

一个项目的Makefile编写及调试

在src目录下包含很多文件夹,那么需要遍历所有的目录执行Makefile,那么给一个在src目录下的Makefile. # 需要排除的目录 exclude_dirs := include bin # 取得当前子目录深度为1的所有目录名称 DIRS := $(shell find . -maxdepth 1 -type d) DIRS := $(basename $(patsubst ./%,%,$(DIRS))) DIRS := $(filter-out $(exclude_dirs),$(DI

转:我是如何做软件测试项目的?

最近公司刚完成了一个比较大的项目-单品页模块化,即使用现在比较流行的Twitter Bootstrap进行前端开发.说其大是因为工作量大,开发前期投入约80人日,包括前端开发及PHP开发,且不包括修复bug的时间,测试投入约48人日,同时也是非常重要的项目,直接关系到转化率,稍有差池就会导致转化率的下降.而我有幸成为该项目的测试负责人,此文即介绍我自己是如何带这个项目的. 1. 人员分工合理,老人带新人 其实这次项目中,人员分配是3个老人(工作也不到2年),2个新人(工作不到1年),2个实习生,