初识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时设置的端口号)
但是当输入数据库对应的数据时,出现错误:
所以又出现一个新问题啦,哎,真是一波三折呀!!!
那怎样解决它呢,我们下回继续探讨啦
(当然希望有解决的同志可以在评论下留言给出你的解决方案,也再次谢谢啦
)
相关文章推荐
- 深入浅出 - Android系统移植与平台开发(七)- 初识HAL
- JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的 开源 Java EE快速开发平台
- Cocos2d-X游戏开发之社交网络平台的使用(EziSocial)(基础介绍)
- 基础集成平台开发(架构篇-Service)
- 微信公众号平台接口开发:基础支持,获取微信服务器IP地址
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
- Java EE 7 教程 第二部分 平台基础 第3章 创建资源
- 微信公众号平台接口开发:基础支持,获取access_token
- java EE技术体系——CLF平台API开发注意事项(4)——API生命周期治理简单说明
- ezStudio,易用高效的业务基础平台开发工具
- 基于jQuery/ajax开发无刷新的交流BLOG基础平台,请鉴赏。
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
- Aooms_基于SpringCloud的微服务基础开发平台实战_003_配置文件与简单的web环境搭建
- 深入浅出 - Android系统移植与平台开发(七)- 初识HAL
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
- 企业级管理软件快速开发平台-极致业务基础开发平台各模块介绍
- 【GStreamer开发】GStreamer基础教程16——平台相关的element