一、 需要网站系统开发需要掌握的技术;
(一)语言
1.Java语言
Java语言体系比较庞大,包括多个模块。从WEB项目应用角度讲有JSP、Servlet、JDBC、JavaBean(Application)四部分技术。
(1)、Java Database Connectivity (JDBC)技术
在Java Web应用开发中,数据库管理系统(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一种用于执行 SQL 语句的 Java API。它由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的API,使他们能够用纯Java API 来编写数据库应用程序。
简单地说,JDBC 可做三件事:
l.与数据库建立连接,
2.发送SQL语句,
3.处理结果。
(2)、Servlet技术
Servlet是运行在服务器端的程序,可以被认为是服务器端的applet。servlet被Web服务器(例如Tomcat)加载和执行,就如同applet被浏览器加载和执行一样。servlet从客户端(通过Web服务器)接收请求,执行某种操作,然后返回结果。
(3)、JavaServer Pages(JSP) 技术
JSP 是从Servlet上分离出来的一小部分,简化了开发,加强了界面设计。JSP定位在交互网页的开发。运用Java语法,但功能较 Servlet弱了很多,并且高级开发中只充当用户界面部分。JSP容器收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式 响应给客户端。其中程序片段可以是:操作数据库、重新定向网页以及发送 E-Mail 等等,这些都是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP 称为Server-Side Language。
(4)、JavaBean(Application)应用组件技术
Application 是Java应用程序,在WEB项目和一些开发中主要应用JavaBean。它就是Application的一部分,逻辑运算能力很强,能极大的发挥 Java语言的优点。JavaBean 被称为是Java 组件技术的核心。JavaBean 的结构必须满足一定的命名约定。JavaBean能提供常用功能并且可以重复使用,这使得开发人员可以把某些关键功能和核心算法提取出来封装成为一个组件 对象,这样就增加了代码的重用率和系统的安全性。
2.HTML+CSS
HTML(Hyper Text Mark-up Language )即超文本标记语言,是 WWW 的描述语言,由 Tim Berners-lee提出。设计 HTML 语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。这样,你只要使用鼠标在某一文档中点取一个图标,Internet就会马上转到与此图标相关的内容上去,而这些信息可能存放在网络的另一台电脑中。
HTML文本是由 HTML命令组成的描述性文本,HTML 命令可以说明文字、
图形、动画、声音、表格、链接等。 HTML的结构包括头部 (Head)、主体 (Body) 两大部分。头部描述浏览器所需的信息,主体包含所要说明的具体内容。
(二)软件
1.eclipse/My eclipse
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)
2.软件:Tomcat
如今,基于Web的应用越来越多,传统的Html已经满足不了如今的需求。我们需要一个交互式的Web,于是便诞生了各种Web语言。如Asp,Jsp,Php等。当然,这些语言与传统的语言有着密切的联系,如Php基于C和C 语言,Jsp基于Java语言。Tomcat即是一个Jsp和Servlet的运行平台。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
3.SQLserver
SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
二、 本次课堂测试的源程序代码;
DBBean.java:
1 package Bean; 2 3 import java.sql.*; 4 5 public class DBBean { 6 7 private String driverStr = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; 8 9 private String connStr = "jdbc:sqlserver://localhost:1433; DatabaseName=g"; 10 11 private String dbusername = "tt"; 12 13 private String dbpassword = "123"; 14 15 private Connection conn = null; 16 17 private Statement stmt = null; 18 19 20 21 public DBBean() 22 23 { 24 25 try 26 27 { 28 29 Class.forName(driverStr); 30 31 conn = DriverManager.getConnection(connStr, dbusername, dbpassword); 32 33 stmt = conn.createStatement(); 34 35 } 36 37 catch (Exception ex) { 38 39 System.out.println("数据连接失败!"); 40 41 } 42 43 } 44 45 46 47 public int executeUpdate(String s) { 48 49 int result = 0; 50 51 System.out.println("--更新语句:"+s+" "); 52 53 try { 54 55 result = stmt.executeUpdate(s); 56 57 } catch (Exception ex) { 58 59 System.out.println("执行更新错误!"); 60 61 } 62 63 return result; 64 65 } 66 67 68 69 public ResultSet executeQuery(String s) { 70 71 ResultSet rs = null; 72 73 System.out.print("--查询语句:"+s+" "); 74 75 try { 76 77 rs = stmt.executeQuery(s); 78 79 } catch (Exception ex) { 80 81 System.out.println("执行查询错误!"); 82 83 } 84 85 return rs; 86 87 } 88 89 public void execQuery(String s){ 90 91 try { 92 93 stmt.executeUpdate(s); 94 95 } catch (SQLException e) { 96 97 // TODO Auto-generated catch block 98 99 System.out.println("执行插入错误!"); 100 101 } 102 103 } 104 105 public void close() { 106 107 try { 108 109 stmt.close(); 110 111 conn.close(); 112 113 } catch (Exception e) { 114 } 115 } 116 }
login.jsp:
1 <%@ page import="java.sql.*" language="java" contentType="text/html; charset=utf-8" 2 3 pageEncoding="utf-8"%> 4 5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 6 7 <html> 8 9 <head> 10 11 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 12 13 <title>登录界面</title> 14 15 </head> 16 17 <body> 18 19 <center> 20 21 <h1 style="color:red">登录</h1> 22 23 <form id="indexform" name="indexForm" action="logincheck.jsp" method="post"> 24 25 <table> 26 27 <tr> 28 29 <td>账号:</td> 30 31 <td><input type="text" name="username"></td> 32 33 </tr> 34 35 <tr> 36 37 <td>密码:</td> 38 39 <td><input type="password" name="password"> 40 41 </td> 42 43 </tr> 44 45 </table> 46 47 <br> 48 49 <input type="submit" value="登录" style="color:#BC8F8F"> 50 51 </form> 52 53 <form action="zhuce.jsp"> 54 55 <input type="submit" value="注册" style="color:#BC8F8F"> 56 57 </form> 58 59 </center> 60 61 </body> 62 63 </html>
logincheck.jsp:
<%@ page import="java.sql.*" language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <jsp:useBean id="db" class="Bean.DBBean" scope="page" /> <% request.setCharacterEncoding("UTF-8"); String username=(String)request.getParameter("username"); String password=(String)request.getParameter("password");//取出login.jsp的值 //下面是数据库操作 String sql="select * from G where username = "+"'"+username+"'";//定义一个查询语句 ResultSet rs=db.executeQuery(sql);//运行上面的语句 if(rs.next()) { /* if(password.equals(rs.getString(2))) { } */ if(password.equals(rs.getObject("password"))){ response.sendRedirect("loginsuccess.jsp"); } else{ out.print("<script language='javaScript'> alert('密码错误');</script>"); response.setHeader("refresh", "0;url=login.jsp"); } } else { out.print("<script language='javaScript'> alert('账号错误——else');</script>"); response.setHeader("refresh", "0;url=login.jsp"); } %> </body> </html>
loginsuccess.jsp
1 <%@ page import="java.sql.*" language="java" contentType="text/html; charset=utf-8" 2 3 pageEncoding="utf-8"%> 4 5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 6 7 <html> 8 9 <head> 10 11 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 12 13 <title>Insert title here</title> 14 15 </head> 16 17 <body> 18 19 <h1>登录成功 </h1> 20 21 </body> 22 23 </html>
三、 运行结果截图;
四、 说明课堂测试未按时完成的原因。
1)建立jsp文件时,路径不对,出现404错误。
2)知识还不够熟悉,不清楚的地方还有太多。
五、列出你对这门课的希望和自己的目标,并具体列出你计划每周花多少时间在这门课上。
1)很喜欢做网页,所以希望能学好这门课程。
2)每周会根据老师的作业布置,按时完成作业;额外地会多看一些视频,计划会每周用5个小时来观看视频,5个小时来实践。