进行了为期两周的实训,整理下学到的东西。
一、目的与要求
目的:自学jsp,结合这学期学的java,做一个教职工工资计算系统。
要求:掌握jsp的相关知识,会写出相关的所需要的java类,并能结合达到目的。作为一个系统,要尽量使得系统更为美观。
二、原理及方案
选题价值:此教职工工资计算系统比较贴近作为学生的我们的生活,了解得比较多,开发时比较容易入手,并且也比较好测试。
技术路线:
1、关于java类
①应题目要求,先制定好协议——创建接口
在包 Ex2_Payroll中创建两个接口:IHandleBaseInfo和IHandleWage 用来定义教职工的基本信息和基本工资的方法
②分析所给题目有两种兼职与全职教师,故写类计算时先要创建一个抽象类Employee,继承两个接口,用来封装教师基本信息。再根据兼职和全职的不同,用FulltimeTeacher类和ParttimeTeacher类来继承Employee,分别实现计算教职工工资问题。
③实现新增教师的功能,编写OperateSalary类来控制整个类。
2、关于jsp页面的实现
①确定程序的入口,写一个控制主页面的jsp程序,其顶部“学院情况介绍”,“教师风采”,“教师基本信息查询”,“教师工资信息计算”,“新增教师”,“教师基本信息浏览”等标签。
②写一个实现“学院情况介绍”的jsp程序。
③写一个实现“教师风采”的jsp程序,主要写一个老师的相关情况。
④写一个实现“教师基本信息查询”,(由于没学习数据库的相关知识,不能真正的实现查询的效果)。
⑤写一个“教师工资信息计算”的信息录入的界面,并且能够根据选择的不同来调用不同的java类实现工资的计算。
⑥写一个“新增教师”信息录入的页面,当点击“确定”按钮时能将相关信息加入并且连同以往教师信息输出到页面。
⑦写一个“教师基本信息浏览”为了便于浏览,用表格的形式呈现。
三、设计/实习过程
1、完成计划:
2013年12月08日 | 查找相关资料,到图书馆找到相关jsp和html自学的相关资料,通过网络找到可能要用到的相关知识,并把知识归纳组织好。 |
2013年12月09日 | 构建好大体的框架 |
2013年12月10日 | 编写好系统所需要的java类。 |
2013年12月11日 | 开始编写简单的jsp程序。 |
2013年12月12日 | 继续熟悉jsp程序,体会jsp的功能。 |
2013年12月15日 | 在jsp中能实现基本的表格制作等相关知识。 |
2013年12月16日 | 能在jsp中实现页面跳转等相对比较复杂的功能。 |
2013年12月17日 | 能在jsp中熟练的引入java类,并实现相应功能。 |
2013年12月18日 | 编写完所需要的程序,并完善。 |
2013年12月19日 | 继续完善并总结。 |
2、具体代码实现
JAVA类中:
接口IHandleBaseInfo
package Ex2_Payroll;
public interface IHandleBaseInfo
{
String getName();
void setName(String name);
String getTitle();
void setTitle(String title);
}
接口IHandleWage
package Ex2_Payroll;
public interface IHandleWage
{
void calculateWage();
float getWage();
}
抽象类Employee:
package Ex2_Payroll;
public abstract class Employee implements IHandleBaseInfo, IHandleWage
{
private String name;
private String title;
private float wage;
public abstract void calculateWage();
public Employee(String name,String title)
{
this.name=name;
this.title=title;
}
public float getWage()
{
return wage;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name=name;
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title=title;
}
protected void setWage(float wage)
{
this.wage=wage;
}
}
类FulltimeTeacher:
package Ex2_Payroll;
public class FulltimeTeacher extends Employee
{
public FulltimeTeacher(String name, String title) {
super(name, title);
// TODO Auto-generated constructor stub
}
private float basicwage;
private float extraclasshour;
public void calculateWage()
{
if(this.getTitle()=="副教授")
this.setWage(this.extraclasshour*80+4000);
if(this.getTitle()=="教授")
this.setWage(this.extraclasshour*100+5000);
}
public void setBasicwage(float basicwage){
this.basicwage =basicwage;
}
public float getBasicwage(){
return basicwage;
}
public void setExtraclasshour(float extraclasshour){
this.extraclasshour=extraclasshour;
}
public float getExtraclasshour(){
return extraclasshour;
}
}
类ParttimeTeache:
package Ex2_Payroll;
public class ParttimeTeacher extends Employee
{
public ParttimeTeacher(String name, String title) {
super(name, title);
// TODO Auto-generated constructor stub
}
private float classhour;
public void calculateWage()
{
if(this.getTitle().equals("副教授"))
this.setWage(this.getClasshour()*100);
if(this.getTitle()=="教授")
this.setWage(this.getClasshour()*150);
}
public void setClasshour(float clsshour){
this.classhour=clsshour;
}
public float getClasshour(){
return classhour;
}
}
JSP中:
Top.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
Insert title here
<%= new java.util.Date() %>
IntroCol.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
学院介绍
武昌工学院简介
武汉工业学院工商学院是经教育部批准建立的独立学院,属多科性全日制普通高等学校。
办学层次以本科为主,由国家统一下达普通高校招生计划,面向全国招生。
学校位于国家级两型社会综合配套改革试验区---武汉市三环线内,毗邻黄家湖大学城,周边大学林立、学风浓郁,区位优越,交通便
捷。现有在校学生10000余人,校园面积745亩,校舍建筑面积18万平方米;各类教学所需的图书馆、实验室、微机室、数字化语音教室及语音教学平台、多媒体电教室及外语教
学播放系统等现代教育技术装备和运动所需的运动场地、体育教学设备配置齐全;学生公寓楼群、学生食堂、大学生活动中心、室内训练场实用美观,方便整洁,为莘莘学子提供了良
好的住宿、饮食环境,同时也为学生开展丰富多彩的校园文化活动提供了优越条件。
学校现有教职员工700余人,其中专职教师500余人,任课教师中,教授、副教授占30%以上,博士、硕士学历的占
50%以上。师资力量雄厚、教学资源丰富是我院独特的优势之一。2008年度教师出版、发表优秀著作和论文200余部(篇),多名教师获国家、省、市级科学进步奖和科研成果奖.
QueryTeacher.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
教师基本信息查询
教师基本信息查询
姓名:
index.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
教师工资计算输入
请选择教师类型
quanzhi.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
全职教师信息输入
Payroll1.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="Ex2_Payroll.*" %>
<%request.setCharacterEncoding("GBK"); %>
<%request.setCharacterEncoding("GBK"); %>
<%request.setCharacterEncoding("GBK"); %>
Insert title here
<%request.setCharacterEncoding("GBK"); %>
<%
String Name=request.getParameter("name");
String Title=request.getParameter("title");
FulltimeTeacher f=new FulltimeTeacher(Name,Title);
String Extraclasshour=request.getParameter("extraclasshour");
f.calculateWage();
%>
姓名: <%=Name%>
职称:<%=Title%>
本月工资是:<%=f.getWage()%>
①这次jsp的自学学习,让我知道了java真正该怎么用,而不是以前那种单纯的只是写个test类来测试。
②做一个合格的系统,要学习的知识还有很多,学会把知识点都串起来,明白学习的每一个知识都是为一个共同的目标作贡献的。
③相对于其他同学来说,我做的不仅过于简单,而且视觉上也太过糟糕,自学的东西还是太少,需要更加努力。·