您的位置:首页 > 编程语言 > Java开发

初识Java EE平台及开发基础

2017-09-10 17:19 344 查看

一、前期准备工作:


我这里使用的开发环境组合是是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 )分析:<
4000
span style="margin:0px;padding:0px;font-size:18pt;font-family:'楷体';">(要什么?What?)

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



( 2 )步骤(前中后):(怎么做?How?)

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

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

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


( 3 )实施:(具体要怎么执行,要用到什么知识点,具体什么类呀,对象呀,方法名呀等等)

根据步骤一:所以我们先设计最终效果的设计页面(也就是你想要的蓝图,这里我随便参考人家设置的一个模板):大家也可以去博客园看看这位园主的文章http://www.cnblogs.com/yibao/p/6441213.html

                                                                     


这个页面就是单纯的jsp和HTML的知识做出来的建立方法步骤我也在下文中顺带附上吧~



好啦,想知道自己要做什么就简单了,我一开始是先建好了数据库,不过我现在觉得作为新手可以先一步步来,因为这就是一个很简单的网页嘛,所以就先打开MyEcplise2014先新建一个web项目,这里我和书上一样命名为jsp_jdbc,然后如图建立login.jsp文件一样再新建logincheck.jsp、main.jsp、error.jspjsp文件。















                                     



然后就开始哒哒哒哒哒的写代码啦,哈哈


login.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="gb2312"%>

<html>
<head>
<title>简易留言板</title>
</head>
<body style="background-color: #E3E3E3">
<div style="text-align:center">
<h1 style="color:red">登录</h1>
<form id="indexform" name="indexForm" action="logincheck.jsp" method="post" >
<table style="border:0;margin:0px auto;">
<tr >
<td >用户名:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="password">
</td>
</tr>
</table>
<br>
<input type="submit" value="登录" style="color:#BC8F8F">
<input type="reset" value="重置" style="color:#BC8F8F">
</form>
如果没有注册单击 <a href="" style="color:blue">这里</a>注册!
<!--  这是进入注册页面的第二种方法
<form action="zhuce.jsp">
<input type="submit" value="注册" style="color:#BC8F8F">
</form>
-->
</div>
</body>
</html>


                                    


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



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

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

                   




 3、创建数据库连接:

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

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

                                                               


[b]哎呀,与想象中不那么顺利

,不过问题不大,别急,我们一步步来,它的提示是Driver
class
找不到!
[/b]

[b]那我们就哪里不会点哪里~步步高点读机,妈妈再也不用担心我的学习啦[/b]

,走题啦不好意思,我们继续,

这有可能是下载在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:\SqlServe
bcdb
rDrivers\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

<%@ page  language="java"  pageEncoding="gb2312" import="java.sql.*"%>
<jsp:useBean id="SqlSrvDB" Scope="page" class="org.easybooks.test.jdbc.SqlSrvDBConn"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>validate page</title>
</head>
<body>
<%
request.setCharacterEncoding("gb2312");
String username=(String)request.getParameter("username");
String password=(String)request.getParameter("password");//取出login.jsp的值
boolean validated=false;
//下面是数据库操作
String sql="select * from login";
ResultSet rs=SqlSrvDB.executeQuery(sql);//运行上面的语句
while(rs.next()){
if((rs.getString("username").trim().compareTo(username)==0)&&(rs.getString("password").compareTo(password)==0)){
validated=true;
}
}
rs.close();
SqlSrvDB.closeStmt();
SqlSrvDB.closeConn();
if(validated){
%>
<jsp:forward page="main.jsp"/>
<%
}else{
%>
<jsp:forward page="error.jsp"/>
<%
}
%>
</body>
</html>




main.jsp


<%@ page language="java"  pageEncoding="gb2312"%>

<html>
<head>
<title>留言板信息</title>
</head>
<body>
<%out.print(request.getParameter("username")); %>,你好!欢迎登录留言板。
</body>
</html>


error.jsp

                

<%@ page language="java"  pageEncoding="gb2312"%>

<html>
<head>
<title>出错</title>
</head>
<body>
登录失败!单击 <a href="login.jsp" style="color:blue">这里</a>返回
</body>
</html>


                          


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

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

                                               






SqlSrvDBConn.java


         

package org.easybooks.test.jdbc;
import java.sql.*;
public class SqlSrvDBConn {
private String driverStr = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
private String connStr = "jdbc:sqlserver://localhost:1433; DatabaseName=login";
private String dbusername = "sa";
private String dbpassword = "123456";
private Connection conn;
private Statement stmt;
ResultSet rs;
public SqlSrvDBConn() {
stmt = null;
try{
Class.forName(driverStr);
conn = DriverManager.getConnection(connStr, dbusername, dbpassword);
stmt = conn.createStatement();
} catch (Exception e) {
System.out.println("数据连接失败!");
}
rs=null;
}
public ResultSet executeQuery(String sql){
try{
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);
}catch (Exception e) {
System.err.println("Data.executeQuery:"+e.getMessage());
}
return rs;
}
public void closeStmt(){
try {
stmt.close();
} catch (SQLException e) {
System.err.println("Data.executeQuery:"+e.getMessage());
}
}
public void closeConn(){
try {
conn.close();
} catch (SQLException e) {
System.err.println("Data.executeQuery:"+e.getMessage());
}
}
}




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


 

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

                              








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

               

 
                 

        

             




所以又出现一个新问题啦,哎,真是一波三折呀!!!





那怎样解决它呢,我们下回继续探讨啦



(当然希望有解决的同志可以在评论下留言给出你的解决方案,也再次谢谢啦

)






内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐