总结笔记初识Java EE平台及开发基础

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了总结笔记初识Java EE平台及开发基础相关的知识,希望对你有一定的参考价值。

一、前期准备工作:

我这里使用的开发环境组合是是MyEclipse2014+Tomcat8+JDK7+SQL Server2012+sqljdbc4.jar

(1)JDK版本:jdk1.7.0_80和jre7 (MyEcplise2014没有jdk8,所以临时换了jdk7)

(2)Web服务器:apache-tomcat-8.5.20

(3)IDE工具:MyEcplise2014

(4)数据库:SQL Server2012(暂时用这个,个人比较喜欢mysql,后面会换成MySQL)

 ( 5 ) SQLServer2012的jdbc驱动程序包:sqljdbc4.jar=>微软官网下载:(http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774

 

二、实战演练

好了,接下来我就直接演示我入手的第一个例子:采用JSP+JDBC开发一个Web登录程序。

( 1 )分析:

首先,我要自己要的效果是什么?

既然是登录页面,那首先肯定要有用户名密码,那这些用户名和密码就要用到数据库

所以我总结了三个步骤(前中后):

1、页面需求(前端效果):用户名、密码、按钮(面需要做界面效果)

2、数据库(后台处理):通过JDBC验证数据库,运用Java知识(间要用Java代码结合JDBC处理数据库后台)

3、需求效果:返回成功与失败信息(后要返回程序的结果)

所以我们先设计最终效果的设计页面(也就是你想要的蓝图,这里我随便参考人家设置的一个模板):

大家也可以去博客园看看这位园主的文章http://www.cnblogs.com/yibao/p/6441213.html

 

 

                                                                     技术分享

好了,想知道自己要做什么就简单了,我一开始是先建好了数据库,不过我现在觉得作为新手可以先一步步来,因为这就是一个很简单的网页嘛,
所以就先打开MyEcplise2014先新建一个web项目,这里我和书上一样命名为jsp_jdbc,然后如图建立login.jsp文件一样
再新建logincheck.jsp、main.jsp、error.jspjsp文件。
 
  技术分享技术分享技术分享
 
                             技术分享
然后就开始哒哒哒哒哒的写代码啦,哈哈
login.jsp
 1 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="gb2312"%>
 2 
 3 <html>
 4 <head>
 5 <title>简易留言板</title>
 6 </head>
 7 <body style="background-color: #E3E3E3">
 8     <div style="text-align:center">
 9         <h1 style="color:red">登录</h1>
10             <form id="indexform" name="indexForm" action="logincheck.jsp" method="post" >
11                 <table style="border:0;margin:0px auto;">
12                     <tr >
13                         <td >用户名:</td>
14                         <td><input type="text" name="username"></td>
15                     </tr>
16                     <tr>
17                         <td>密码:</td>
18                         <td><input type="password" name="password">
19                         </td>
20                     </tr>
21                 </table> 
22             <br>
23                 <input type="submit" value="登录" style="color:#BC8F8F">
24                 <input type="reset" value="重置" style="color:#BC8F8F">
25             </form>
26                 如果没有注册单击 <a href="" style="color:blue">这里</a>注册!
27            <!--  这是进入注册页面的第二种方法
28            <form action="zhuce.jsp">
29                 <input type="submit" value="注册" style="color:#BC8F8F">
30             </form>
31             --> 
32     </div>
33 </body>
34 </html>

                        

写完这个页面接下来要干嘛?当然什么都不能干,如果你是在要干,那就自己好好的欣赏这个页面咯技术分享

一开始我也说了,设计好界面是第一步,然后就要处理后台的数据库啦!

 

 

1、用SQLServer2012创建名为login的数据库,并创建一个用户表user,结构如下:

                   技术分享

 

 

  2、创建数据库连接:

  (1)因为连接的是sql server2012,所以先下载好所需要的jdbc驱动包程序sqljdbc4.jar;

  (2)打开myecplise2014,建立与数据源的连接:【MyEclipseDatabase Explorer】=>【New…】,

 

                                                               技术分享

哎呀,与想象中不那么顺利技术分享,不过问题不大,别急,我们一步步来,它的提示是Driver class找不到!

那我们就哪里不会点哪里~步步高点读机,妈妈再也不用担心我的学习啦技术分享,走题啦不好意思,我们继续,

这有可能是下载在sqljdbc4.jar包有问题,对此我重新进入官网发现在相关资源下拉还有3个不同的版本,

所以我再次下载,但是发现我应该要下是42版本的。(因为一开始我用的还是jdk8)

 

技术分享

 

结果:还是不行!!!(那我先暂时跳过连接数据库部分,可能一开始还有很多不明白的地方会让我钻进牛角尖,后面再处理试试,不行我就换MySql)

不过执着的我又不断的上网查资料,最后我还是觉得jdk8版本太高了与MyEclipse2014兼容性有点问题,所以就开始换成jdk7来试了,

至于配置Tomcat8+JDK1.7我就不多说了,主要提一下Microsoft JDBCDriver 4.0 for SQL Server这个驱动包的下载与安装配置:

微软官网下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774

 

下载sqljdbc_4.0.2206.100_chs.tar.gz(2.2M),解压文件,得到sqljdbc_4.0这个文件夹,并且打开里面只有一个目录chs,再进入里面,能看到sqljdbc.jar和sqljdbc4.jar,因为我现在使用的是jre1.7版本,则忽略sqljdbc.jar。然后在我的本地路径F:\\SqlServerDrivers下新建一个文件夹,命名为sqljdbc4,并只复制sqljdbc4.jar进去。

                 技术分享                                    技术分享

因为之前提示的是找不到类文件,说明我环境变量中肯定没有配置好,这应该才是报错的原因所在,

接下来我就要在环境变量中的CLASSPATH变量最后面追加  “; F:\\SqlServerDrivers\\sqljdbc4\\sqljdbc4.jar” 

                                            技术分享

但是这还不完整!!!!

如果只是上面那一步也不行,然后我又不断找资料,(可以参考文章:http://blog.csdn.net/u012453607/article/details/42456505),看完这个我突然醍醐灌顶,终于发现我竟然忘记最重要的事,

就是我既然知道了是类文件的问题那就不应该遗忘还有jdk里面的类文件,还有需要支持的服务器的连接性问题。所以最终按照那位园主的建议执行以下4个步骤:

  (1)     我们需要将sqljdbc4.jar类库文件拷贝到C:\\Program Files\\Java\\jdk1.7.0_80\\jre\\lib\\ext目录下。(看你安装在哪个盘,下同)

  (2)     我们需要将sqljdbc4.jar类库文件拷贝到C:\\Program Files\\Java\\jre7\\lib\\ext目录下。

          (最好是,只要是jre文件夹,都复制一个sqljdbc4.jar到jre7\\lib\\ext里去!!)

  (3)     如果是使用Tomcat做服务器(我使用的是Tomcat8),那么我们需要将sqljdbc4.jar类库文件拷贝到F:\\tomcat\\apache-tomcat-8.5.20\\li目录下。

  (4)     如果是使用Tomcat做服务器,那么我们需要将sqljdbc4.jar类库文件拷贝到F:\\tomcat\\apache-tomcat-8.5.20\\webapps\\examples\\WEB-INF\\lib目录下。

然后再次建立与数据源的连接:如下图所示,已成功建立连接啦!哈哈。技术分享技术分享

 

     技术分享  技术分享  技术分享                              

   这样数据库就和MyEcplise连接上关系啦技术分享妈呀,真麻烦,可费劲了我不少时间去探索!!!!!

   有了数据库的支持那接下来就继续处理剩下的3个jsp页面文件,我先附上图

  logincheck.jsp

 1 <%@ page  language="java"  pageEncoding="gb2312" import="java.sql.*"%>
 2 <jsp:useBean id="SqlSrvDB" Scope="page" class="org.easybooks.test.jdbc.SqlSrvDBConn"/>
 3 <html>
 4 <head>
 5 <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
 6 <title>validate page</title>
 7 </head>
 8 <body>
 9 <%
10     request.setCharacterEncoding("gb2312");
11     String username=(String)request.getParameter("username");
12     String password=(String)request.getParameter("password");//取出login.jsp的值
13     boolean validated=false;
14     //下面是数据库操作
15      String sql="select * from login";
16      ResultSet rs=SqlSrvDB.executeQuery(sql);//运行上面的语句
17      while(rs.next()){
18         if((rs.getString("username").trim().compareTo(username)==0)&&(rs.getString("password").compareTo(password)==0)){
19             validated=true;
20         }
21      }
22      rs.close();
23      SqlSrvDB.closeStmt();
24      SqlSrvDB.closeConn();
25      if(validated){
26         %>
27         <jsp:forward page="main.jsp"/>
28         <%
29         }else{
30         %>
31         <jsp:forward page="error.jsp"/>
32         <% 
33         }
34         %>
35 </body>
36 </html>

 

mian.jsp

 1 <%@ page language="java"  pageEncoding="gb2312"%>
 2 
 3 <html>
 4   <head>
 5     <title>留言板信息</title>
 6   </head>
 7   <body>
 8     <%out.print(request.getParameter("username")); %>,你好!欢迎登录留言板。
 9   </body>
10 </html>

 

error.jsp

 1 <%@ page language="java"  pageEncoding="gb2312"%>
 2 
 3 <html>
 4   <head>
 5     <title>出错</title>
 6   </head>
 7   <body>
 8       登录失败!单击 <a href="login.jsp" style="color:blue">这里</a>返回
 9   </body>
10 </html>

             

到这一步就已经完成了“前”“后”,那么就剩下“中”啦!如图建立包与新建类来连接数据库

(终于真正用到了Java代码)

    技术分享

SqlSrvDBConn.java

 1 package org.easybooks.test.jdbc;
 2 import java.sql.*;
 3 public class SqlSrvDBConn {
 4     private String driverStr = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
 5     private String connStr = "jdbc:sqlserver://localhost:1433; DatabaseName=login";
 6     private String dbusername = "sa";
 7     private String dbpassword = "123456";
 8     private Connection conn;
 9     private Statement stmt;
10     ResultSet rs;
11     public SqlSrvDBConn() {
12         stmt = null;
13         try{
14             Class.forName(driverStr);
15             conn = DriverManager.getConnection(connStr, dbusername, dbpassword);
16             stmt = conn.createStatement();
17         } catch (Exception e) {
18             System.out.println("数据连接失败!");
19         } 
20         rs=null;
21     }
22     public ResultSet executeQuery(String sql){
23         try{
24             stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
25             rs=stmt.executeQuery(sql);
26         }catch (Exception e) {
27             System.err.println("Data.executeQuery:"+e.getMessage());
28         } 
29         return rs;
30     }
31     public void closeStmt(){
32         try {
33             stmt.close();
34         } catch (SQLException e) {
35             System.err.println("Data.executeQuery:"+e.getMessage());
36         }
37     }
38     public void closeConn(){
39         try {
40             conn.close();
41         } catch (SQLException e) {
42             System.err.println("Data.executeQuery:"+e.getMessage());
43         }
44     }
45 }

 

最后选择好自己之前配置的服务器就准备测试啦技术分享

 

在浏览器中输入http://localhost:8080/jsp_jdbc/  (8080是我配置Tomcat时设置的端口号)

 

 

                              技术分享

 

 

但是当输入数据库对应的数据时,出现错误:

                                                技术分享        

             技术分享

所以又出现一个新问题啦,哎,真是一波三折呀!!!那怎样解决它呢,我们下回继续探讨啦技术分享

 



以上是关于总结笔记初识Java EE平台及开发基础的主要内容,如果未能解决你的问题,请参考以下文章

java基础知识及详细笔记

JAVA复习笔记1

JavaSE基础--初识Java

java基础语法总结

初识Java及基础知识

JAVA基础总结