
Java----基础入门
基础
熊猫大哥大
如有技术问题可通过微信公众号【熊猫大哥大】与我联系
-
原创 JSP+MySQL校园新闻网站(7)–新闻发布功能开发
1. 任务之前已经实现了:新闻列表浏览新闻内容展示登录成功后跳转管理后台页面登录失败后跳转错误信息页面本篇在登录成功后管理后台页面admin.jsp,添加发布新闻的功能。2. 具体功能可以输入新闻标题、内容等信息后,点击发布,则数据库内新增一条新闻。此时如果打开新闻列表浏览页,能看到新增的新闻信息。3. 开发流程3.1 查看admin.jsp之前admin.jsp页面已...2020-04-19 20:16:48486
0
-
原创 JSP+MySQL校园新闻网站(6)–管理员登录功能开发
1. 任务之前已经实现了博客列表的展示、选择一篇博客后具体内容的展示,这两个页面。本篇实现下管理员登录功能。2. 具体功能点击登录按钮后,跳转到登录页面login.jsp,在登录页面输入用户名密码,如果登录成功则跳转管理页面admin.jsp,登录失败则跳转登录失败信息页面error_nologin.jsp。3. 开发流程3.1 点击登录按钮在登录按钮中添加跳转链接,点击后跳转log...2020-04-19 12:14:36630
4
-
原创 JSP+MySQL校园新闻网站(5)–新闻查看功能开发
1. 任务本篇来实现新闻内容查看页面。2. 具体功能在新闻浏览页面选择一条新闻点击后,跳转新闻内容查看页面,页面上面显示新闻的标题,中间显示新闻内容。效果如下:3. 开发3.1 查看原来的跳转链接原来的跳转连接是这样的:row += "<td><a href='article.jsp?id=" + rs.getString("id") + "'>" + r...2020-04-14 22:04:09444
0
-
原创 JSP+MySQL校园新闻网站(4)–新闻浏览功能开发
任务本篇来实现新闻浏览页面。功能页面顶部是标题栏,标题栏左侧是网站名称SchoolNews--校园新闻网,右侧是登录按钮,管理员可以凭借账号密码登录后发布新闻。页面内容区域是新闻列表,以表格的形式展示新闻,点击新闻标题可以跳转到具体新闻内容。整体效果如下:开发1、新建view.jsp页面右击WebContent文件夹,选择New-JSP File,文件名为view.jsp,表示新...2020-04-08 17:55:55647
0
-
原创 JSP+MySQL校园新闻网站(3)–数据库与java项目创建
新建数据库使用Navicat新建数据库shcoolnews。为了保存管理员用户名、密码,新建user表,结构如下图。简单解释下,id是自增主键,插入数据的时候不用管id列,它会自动从1、2、3…自动递增。username保存用户名信息,password保存密码信息。然后新建表news保存新闻信息,结构如上图。简单解释下,id是自增主键,type表示新闻类型,title是新闻标题,ti...2020-04-08 17:55:20511
0
-
原创 JSP+MySQL校园新闻网站(2)–开发环境搭建
背景上一篇讲了需求分析,十分简单,但是不要掉以轻心,任何一个可用的项目,做起来其实都需要注意方方面面。本篇来讲下开发系统需要安装的软件环境,包括JDK、Tomcat、Eclipse、MySQL、Navicat。重点不是一步一步的安装过程,重点是讲清楚软件的版本、下载方式、安装注意事项、软件的用途,理解这些软件是干嘛的,用起来就不难了。JDK安装JDK是啥,先看它的英文原名:Java De...2020-04-06 18:35:031261
0
-
原创 JSP+MySQL校园新闻网站(1)–需求分析
整体流程做一个项目,首先是需求分析,将要做的东西说明白。然后技术选型,根据需求选择合适的技术架构,小项目适宜采用简单快速的架构,不是什么项目都要搞的很复杂。然后是开发环境安装,JDK、Eclipse、Tomcat、MySQL、Navicat(用来操作数据库),这个专门拿出一章来讲讲。然后是整体设计,先想好有哪些页面,哪些类,哪些功能。然后是具体开发阶段。最后测试投产,为了方便演示,我们...2020-04-05 18:06:30570
0
-
原创 JSP+Servlet培训班作业管理系统[23]–番外篇之Java Web日志
本篇使用java自带的java.util.logging处理日志,特点是简单快捷。首先理解四个类://Logger类是日志记录器import java.util.logging.Logger;//FileHandler类帮助Logger类处理文件import java.util.logging.FileHandler;//LogRecord类帮助Logger类处理日志中消息级别和内容imp2017-03-09 22:22:46418
1
-
原创 JSP+Servlet培训班作业管理系统[22]–番外篇之过滤器与权限管理
本篇主要讲述使用过滤器实现简单的权限管理功能。首先说下什么是过滤器呢,其实就是在网页请求和Servlet之间添加了一个过滤网。通过设定一些规则,符合规则的请求呢就通过了过滤器,到达了Servlet;那不符合规则的请求呢,过滤器就拦截下来,不让它继续访问了。感觉挺高级啊,那么是如何实现的呢,其实很简单哦,跟Servlet差不多。Servlet通过继承HttpServlet具备了处理Http请求的功能,2017-03-09 22:21:02703
0
-
原创 JSP+Servlet培训班作业管理系统[21] -番外篇之登录页美工
正式开始登录页的实现过程。第一步,是设计整体的感觉,因为是培训班作业管理系统嘛,培训班面对的都是些小学生,最喜欢TFBoys啊这种小帅哥、还有snh48啊这种小美女,青春年少、才华横溢。猫哥能想到的主色调就是粉红+嫩绿。春天的感觉,棒棒哒。第二步,有了整体的感觉之后,带着这种朦胧的感觉,去寻找一幅登录页的背景图。猫哥一般习惯于使用搜索引擎搜索一幅淡雅的图片,注意因为是背景图,猫哥建议是有很多地方是空2017-03-09 22:19:45424
0
-
原创 JSP+Servlet培训班作业管理系统[20]–学生选课与提交作业功能实现
下面的截图是猫哥花了半个小时设计的登录页(PS,千万别说太粉嫩,只是因为培训班要爱护祖国的花朵)。本篇简单的说下设计方法并贴下源代码,然后下一篇将详细的讲述具体设计和实现的想法和步骤。1,首先确定下前提:没有美工,只能靠自己单干,而此处的自己一般是程序开发人员,缺乏美感! 2,缺乏美感怎么办,找啊。不会创造,欣赏总会把,所以根据整个系统的主题色(后台页面是黑红),然后根据系统应用群体(主要是学生)2017-03-09 22:17:45557
2
-
原创 JSP+Servlet培训班作业管理系统[19]–教师角色之作业打分功能实现
本篇释放所有前端源码,包括4个css文件、一个web.xml和15个jsp网页。 web.xml:<?xml version="1.0" encoding="UTF-8"?><!-- web.xml文件内容 --><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://w2017-03-08 15:43:251111
5
-
原创 JSP+Servlet培训班作业管理系统[18]–教师角色之作业题目管理功能实现
项目结构:接下来依次粘贴src下各package源代码,下一篇将放WebRoot下各网页源代码/** * action包:包含所有动作类 * Action类是所有动作类抽象基类 * 具体动作类包含:AddAction AddWorkAction DeleteAction EditAction EditJobContentAction EditJobScoreAction * LoginAct2017-03-08 15:34:441615
1
-
原创 JSP+Servlet培训班作业管理系统[17]–教师角色之课程管理功能实现
算一算时间,差不多一个月时间,终于的终于所有培训班作业管理系统所有功能代码都写完了,作为纯HTML+CSS+JSP+Servlet实现的Web程序,没有使用一点Javascript及相关的框架,所以程序的兼容性应该是相当的好(偷笑),但是实现过程也是比较艰辛的,都是纯手敲的代码,错误也在所难免,有毛病的地方也肯定跑不了,非常欢迎大家批评指正。今天的完结篇之功能点介绍之后,还会有JSP+Servlet2017-03-08 08:43:45835
21
-
原创 JSP+Servlet培训班作业管理系统[16]–校长角色之课程浏览功能实现
step1是新增作业的页面workUpdata.jsp,代码如下:<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><!-- 使用c:标签需要添加本行代码 --><!DOCTYPE H2017-03-08 08:35:51508
0
-
原创 JSP+Servlet培训班作业管理系统[15]–后台管理页面右侧内容区域美化
猫哥最近已基本实现了JSP+Servlet培训班作业管理系统校长、教师拥有的功能。但是一直没有什么功能是有新意的、可讲的,直到Today,猫哥发现一个非常经典的场景——数据库事务的使用场景,那就是教师发布作业,这就是一个必须(不得不)采用事务的简单场景,本篇讲述该如何设计实现。首先必须先了解下表结构: 简单描述下:1,system_user:用户表,需要注意user_role对应system_2017-03-08 08:32:38471
10
-
原创 JSP+Servlet培训班作业管理系统[14]–人员删除功能的实现
先展示下分页成果: 刚开始接触炸窝(Java)的时候,猫哥比较怵分页,感觉很麻烦。其实只要理解了,还是相当简单的。怎么理解呢,自己动手实现一次(一次就够够的了,但找别人的代码复制粘贴就不好了,就不算自己动手)。如果自己动手都不知道该从何下手咋办,没事,这篇就是说怎么分页的。第一,如果某个页面,比如显示人员列表的页面,需要分页。如果后台没有收到跟页码相关的参数,那默认肯定要显示第一页。如果这2017-03-08 08:30:33482
0
-
原创 JSP+Servlet培训班作业管理系统[13]–人员修改功能的实现
上一篇讲完了不止于CRUD的设计,本篇就在新设计的基础上实现用户登录,在实现之前,猫哥先放一张数据库结构的截图(之前的设计竟然忘了学生选课表student_lesson,好尴尬啊…所以此处重放) step1,用户登录页面代码如下,需要注意的是点击登录后提交到/HomeworkSystem/ActionServlet?method=login&entityType=User method=logi2017-03-05 22:00:11732
0
-
原创 JSP+Servlet培训班作业管理系统[12]–人员新增功能的实现
PS:稍微讲点题外话,本来猫哥想的是JSP+Servlet培训班作业管理系统就按最最简单的实现,后来发现一句句代码硬敲实在是太费劲,所以折腾出了个后端设计。等设计到本篇所讲的这一版,猫哥发现不能再修改了,因为设计之路是无穷尽的,包容的功能越多就越复杂,最后可能发现自己是在设计一种模式、或者设计一种框架了,没那个必要,因为毕竟目前大家的水平也远远达不到设计框架的水准(当然也可以硬设计一个难用的框架),2017-03-05 21:57:01500
0
-
原创 JSP+Servlet培训班作业管理系统[11]–人员浏览功能的实现
根据上一篇的设计,猫哥想实现的是对于类似的某种实体概念(比如人员)的增删改查操作,将相似的逻辑封装一下,不用每次都写重复的部分。扯得远了点,直接看具体如何实现的:在具体实现之前,先展示下效果,需要注意,猫哥将表格美工,内容部分美工,整个后台页面美工的css文件都单独抽取出来了,因为css不是本系列的重点且此前已经详细讲过了,此处不再贴代码。a,登录成功后 b,点击人员管理后 c,点击人员2017-03-05 21:55:36581
0
-
原创 JSP+Servlet培训班作业管理系统[10]--登录功能完整实现
PS:本篇讲的是通用CRUD后端设计,主要是设计的想法,跟代码不相关,故可跳过本篇直接看下一篇代码实现。在登录功能实现之后,猫哥定睛一看,剩下的好像绝大部分工作都是CRUD。也就是对一些事物的增、删、改、查。比如人员管理功能,无非就是查看人员(查)、修改人员信息(改)、新增人员(增)、删除人员(删)。而跟人员管理相关的网页,其实有两个就够额,一个是userManage.jsp,提供人员列表和相关的修2017-03-05 21:53:01697
0
-
原创 JSP+Servlet培训班作业管理系统[9]–数据库操作类开发
本篇在上篇数据库操作层实现的基础上,实现培训班作业管理系统的登录功能,具体过程如下:1,登录页面login.jsp,注意修改为了使用用户编号和密码登录,因为用户编号是由mysql自动分配的自增长的字段肯定是唯一的,这样就避免了判断用户名重复的逻辑,使代码更加简单便于维护。<%@ page language="java" import="java.util.*" pageEncoding="utf-82017-03-05 21:52:07653
0
-
原创 JSP+Servlet培训班作业管理系统[8]–实体模型类开发
本篇实现数据库相关的实体类(entity包)和操作类(operation包),具体代码如下:/*entity包下的实体类,与数据库中的表是对应关系*/package entity;public class Role {//对应system_role private int roleId; private String roleName; public int getRol2017-03-04 11:53:04684
4
-
原创 JSP+Servlet培训班作业管理系统[7]–Mysql数据库结构实现
从本篇开始,速度会变快一点,然后注释会精简一点,但是代码会贴的全一点。本篇来实现JSP+Servlet培训班作业管理系统的数据库部分。首先通过Navicat的ER图标来阅览整个结构:具体说明如下:system_role 系统角色表-role_id 角色编号-role_name 角色名称(校长、教师、学生三选一)system_user 系统用户表-user_id 用户编号-user_role2017-03-04 11:51:41932
7
-
原创 JSP+Servlet培训班作业管理系统[6]–Mysql数据库结构设计
本篇来具体实现校长角色下的人员管理功能——task4-xtask4-1,首先大体脑海里设计下,人员管理,无非是增、删、改、查。查:以一个列表的形式显示所有人员信息增:有一个网页,可以输入一个人员的信息,点击确定后新增一个人员,并跳转到“查”页面改:有一个网页,可以修改人员信息,网页样式可以服用“增”删:在“查”页面删除人员后,更新列表由以上想法,猫哥大体想把人员管理页面设计为上中下三部分,上为2017-03-04 11:47:56722
0
-
原创 JSP+Servlet培训班作业管理系统[5]–加载角色对应菜单
接上一篇,现在需要让不同角色的用户登录之后,index.jsp页面左侧菜单栏看到不同的菜单,此时猫哥想到两种方式:方式1,将菜单和角色-菜单的对应信息保存到数据库中。方式2,将菜单和角色-菜单的对应信息直接保存到内存中。因为培训班作业管理系统较为简单,所以直接采用方式2:task3-8,添加一个Constant类用于保存常量的信息如下:package util;import java.util.2017-03-04 11:46:35746
0
-
原创 JSP+Servlet培训班作业管理系统[4]–记录登录用户信息
稍微总结下,根据当前的项目结构图: 简单说下当前已经实现的逻辑如下:1,login.jsp是用户登录页2,点击登录按钮后,登录页表单提交到/LoginServlet3,如果用户名、密码错误,跳转到error.jsp并在error.jsp页面显示错误信息4,如果用户名、密码正确,根据角色不同跳转到不同页面(此处暂时未实现,但是逻辑是这么设计的,而且也留好了设计的位置)5,以校长角色登录后2017-03-04 11:45:03769
0
-
原创 JSP+Servlet培训班作业管理系统[3]–点击菜单加载功能页面
继续我们的事业task2-1到task2-3中,猫哥基本实现了shoolmater.jsp显示方面的问题,也就是校长登录后看到的后台页面显示问题。 本篇继续完善shoolmater.jsp页面,主要有以下三点:task2-4:完成顶部标题栏设计,使右侧显示登录用户的信息task2-5:完善左侧菜单栏的设计,使菜单栏每个选项指向一个网页task2-6:完善右侧内容区域设计,点击菜单栏对应菜单,内2017-03-01 15:59:351527
0
-
原创 JSP+Servlet培训班作业管理系统[2]--后台管理页面外观实现
上一篇中,我们实现了登录功能,本篇主要关注点是不同用户登录后,根据用户角色不同(校长、教师、学生)进入到不同的页面。为了便于理解,猫哥贴下当前的项目结构图: task2-1,首先要理解不同的页面,所谓不同的页面,是指校长或者教师或者学生登录进来,看到的菜单、功能、显示是有所不同的。但是对于程序设计者来说,有多重方式可以实现这种不同。 最容易理解的,就是根据登录角色的不同,跳转到不同的页面,然2017-03-01 15:57:313996
0
-
原创 JSP+Servlet培训班作业管理系统[1]-登录功能的简单实现
按照猫哥的一般习惯,做一个项目的顺序如下:1,先搞定数据库2,搞定Java Web项目基本结构,包括数据库相关操作类3,开发Java Web各项功能4,优化、改进这个顺序呢,不直观,而且容易使人厌倦,非常无聊,是故,抛弃之。这次猫哥从看的见摸得着的网页出发,然后网页需要后台提供啥功能,就搞啥。最后后台需要数据库啥样,就弄啥样,用这样一个顺序实现培训班管理系统。为了方便记忆和理解,猫哥将内容分节2017-03-01 15:55:202022
0
-
原创 JSP+Servlet培训班作业管理系统[0]–项目背景与需求分析
本系列主要是讲述如何用JSP和Servlet开发一个培训班管理系统,核心功能就是学生提交作业、教师批阅作业。在本系列开始之前有一下几点说明:0,本系列承接【猫哥带你去战斗-Java Web开发】,依赖技术为简单的HTML+CSS+JSP+Servlet+MySql1,先实现、后完善2,该有的都会有,最后应该是可用的3,本系列不关注前端,也不具备优美的前台界面本篇的主要内容就是需求分析。好的,因2017-03-01 15:53:091101
0
-
原创 Java Web开发–Servlet篇[6]–漂亮的终结篇
本篇是Java Web开发系列的最后一篇,接下来猫哥将开始《猫哥带你去战斗—使用JSP+Servlet开发培训班作业管理系统》,新的系列将承接Java Web开发,主要依赖HTML、Java、Servlet、JSP这些基本技术开发一个培训班作业管理系统。OK,在Servlet篇的最后,猫哥介绍两个东西${}和<c:forEach>。${},学名“EL表达式”,功能强大,具体负责将Servlet中re2017-02-26 19:12:34561
0
-
原创 Java Web开发–Servlet篇[5]–犀利的内置对象
前面几篇写的内容挺多挺乱,稍微理顺下: 1,网站无非是前后台交互 2,目前我们的后台可以认为是Servlet 3,前台可以认为是JSP和HTML 4,Servlet因为可以写out.println(“”);等输出到前台的html内容,所以一定程度上它的输出可以认为是前台。 5,JSP因为可以在<%%>中间写Java代码后台逻辑,所以可以当后台使用 6,不管是html还是jsp,其实都是在2017-02-26 19:11:32420
0
-
原创 Java Web开发–Servlet篇[4]–JSP顺势而生
前一篇讲了利用HttpServletRequest可以获取网页请求相关的信息,之前我们已知道利用HttpServletResponse可以向网页返回(输出)信息。前一篇已经演示了获取网页请求中参数的方法,本篇就先来演示下Servlet如何响应网页的请求返回对应的信息给用户。我们就来模拟这么一个场景,数据库里面有两张表,分别是学生、班级表,一个班级对应多个学生。网页上显示所有的班级信息,选中一个班级后2017-02-26 19:07:11501
0
-
原创 Java Web开发–Servlet篇[3]–获取网页数据
上篇讲了网页可以通过get或post方式向Servlet抛出请求,有时候呢,请求是带参数的。比如网页端想查询三班所有学生姓名,那么这个请求传递给Servlet处理时候,就要携带一个“三班”的参数信息,Servlet根据”三班”来返回该班学生姓名。所以,本篇主要内容:1, 简单演示get方式传参方法(因为get传参本来就比较简单) 2,比较详细演示表单通过post方式传参(表单也可以通过get传参2017-02-24 08:52:28640
0
-
原创 Java Web开发–Servlet篇[2]–get与post
本篇主要涉及2个内容:使用MyEclipse简化创建Servlet的过程get与post请求的区别哈哈,列完了这2个条目,猫哥自我感觉干货满满啊。首先是1,使用MyEclipse简化创建Servlet的过程,因为手写Servlet,每次都要搞一样的web.xml配置文件修改,都要继承HttpServlet方法并重写doGet等方法,太无聊了。猫哥说过程序设计最基本的就是避免重复,重复的东西既无2017-02-24 08:50:06708
0
-
原创 Java Web开发–Servlet篇[1]–手(首)写Servlet
OK,最近年底了,有点忙,哈哈,今天就从一个观察者的视角来实现一个手写的Servlet,手写的特点是麻烦,好处是能知道这玩意是从哪来的——便于理解。PS:所谓观察者视角,就是不站立场,观察双方,双方就是网站的使用者和网站开发者两方了。好的,大体分为以下几步吧:1,网站用户访问网址2,网站接受用户访问请求,并将该请求交给一个Servlet处理3,我们来写这个Servlet,响应用户请求为了更加2017-02-24 08:47:251128
0
-
原创 Java Web开发–Servlet篇[0]–Servlet是干嘛的
之前猫哥分别讲了开发环境介绍、网页篇、Java篇。其中网页篇说的是如何实现一个静态的网页(所谓静态就是内容不变的网页),Java篇讲了一种编程语言如何运作,OK,Servlet篇就是讲如何利用Java语言生成动态的网页。OK,那么什么是Servlet呢,其实Servlet就是一个Java类。我们知道,Java中有ArrayList类可以保存一系列元素,有Exception类负责处理异常,有Conne2017-02-21 16:59:05636
0
-
原创 Java Web开发–Java篇[14]–数据库操作简化
上一篇中演示的代码中,有很多重复部分,比如针对每个实体类如StudentInfo、ClassInfo、RoomInfo,都要写逻辑基本上是一模一样的查询、更新、删除、添加方法。既然是重复,那么可以想办法提取规则,精简代码。猫哥想到的,有两个方向。第一种,既然读出来的都是数据库表格的内存映射,那么最简单的,我们可以定义一个类如下:public class Table{ String colum2017-02-21 16:53:55439
0
-
原创 Java Web开发–Java篇[13]–联表操作
Java是面向对象的,关系数据库中的表的每一行代表一组数据且每一列数据含义相同。所以很容易就想到,Java中的一个对象可以对应到数据库表的一行元素,那么Java对象的每个属性就可以自然对应到数据库一行中的一列。这样做是非常有意义的,因为最终要把数据库中的数据显示在网页上,还得先使用Java语言把数据库中的数据查询出来,然后放在Java对象里面,最后通过一些方式把Java对象里面的内容输出到网页上,是2017-02-21 16:52:59918
0