最近公司領(lǐng)導(dǎo)告訴接下去接的一個(gè)產(chǎn)品,可能會(huì)涉及到oracle數(shù)據(jù)庫(kù),以前用得最多的是mssql,前些時(shí)間學(xué)了下mysql也算少許用過(guò)。oracle沒(méi)接觸過(guò)。應(yīng)為我之前做過(guò).net開(kāi)發(fā),所以數(shù)據(jù)訪問(wèn)接口這塊,涉及到的ashx wcf webserver這些,學(xué)了下servlet感覺(jué) 這些技術(shù)比較像 ashx編寫(xiě)的接口。
一、 首先在電腦上安裝了 oracle數(shù)據(jù)庫(kù), 安裝ORACLE數(shù)據(jù)庫(kù)按常理說(shuō),直接下載安裝就行了,但是中途是遇到了問(wèn)題的,原因就是我的系統(tǒng)是Win7 64 oracle的client客戶(hù)端不支持 win7 64,即使是64的系統(tǒng)也只能下載32位的client安裝,這里搞的我重用ghost還原了下系統(tǒng)。(其實(shí)后面發(fā)現(xiàn)它是可以完全卸載的)
二、我電腦上是一直都安裝有ecplise的,但是沒(méi)有安裝java的web開(kāi)發(fā)環(huán)境,下面我說(shuō)下安裝方法吧
ecplise菜單欄----Help-->Install New Software
然后在Work with:左邊的文本框輸入:http://download.eclipse.org/releases/kepler
等待片刻后會(huì)出現(xiàn)javaWeb安裝選項(xiàng): 然后選擇最后一項(xiàng) web...打勾 一直下一步 完畢 下面是截圖
到這里我們的javaweb開(kāi)發(fā)環(huán)境就安裝好了,里面包含了servlet.....
三、接著下載apache-tomcat服務(wù)器:我下的是7,然后解壓到任意路徑
四、創(chuàng)建servlet環(huán)境
1:打開(kāi)ecplise
2:創(chuàng)建apache-tomcat服務(wù)器(servlet會(huì)用到,下面我會(huì)說(shuō)創(chuàng)建方法)
菜單欄 file----->new---->other---->Server(點(diǎn)開(kāi)文件夾)--Server 然后直接next 然后選擇Apache點(diǎn)開(kāi)選擇你下載的 服務(wù)器對(duì)應(yīng)版本,如果你是6.幾 7.幾這樣的版本通用都選擇 6或7.................. next然后在Browser中選擇你剛才解壓apache-tomcat的文件夾路徑(下面是截圖)
3:創(chuàng)建severlet
菜單欄 file----->new---->other---->Web-->Dynamic Web Project創(chuàng)建 然后直接next,跳轉(zhuǎn)后隨便取個(gè)名字就Finish了下面是截圖
創(chuàng)建好之后:我們就需要?jiǎng)?chuàng)建servlet的.java文件 我直接上圖
到這里我們的Servlet就算創(chuàng)建完畢了
4:運(yùn)行我們創(chuàng)建的Servlet項(xiàng)目
java Resources--->src--->包名---.java(servlet文件) 鼠標(biāo)右鍵 點(diǎn)擊 run as
選中 列表里面的服務(wù)器:如果這時(shí)候服務(wù)器狀態(tài)為Stopped,我們就需要重啟動(dòng)下機(jī)器
然后電Finish后就可以啟動(dòng)servlet了.
5: 導(dǎo)入oracle驅(qū)動(dòng)包 ojdbc14.jar不知道路徑直接輸入查詢(xún),下面截圖
上面是部署程序集截圖 點(diǎn)擊Java Build Path Entries后 選擇剛才創(chuàng)建的 jar后導(dǎo)入
6:連接本地Oracle數(shù)據(jù)庫(kù) 查詢(xún)一個(gè)表的數(shù)據(jù)輸出
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Connection conn = null; Statement stmt = null; ResultSet rs = null; response.setContentType("text/html"); response.setCharacterEncoding("gb2312"); PrintWriter out = response.getWriter(); out.println("<table border=1>"); out.println("<tr><td>Content:</td></tr>"); try { Class.forName("oracle.jdbc.driver.OracleDriver");//加載驅(qū)動(dòng) conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "SCOTT", "Lh19870426");//創(chuàng)建連接 stmt = conn.createStatement();//創(chuàng)建statement rs = stmt.executeQuery("select * from ORACLETESTDATABASE"); //得到結(jié)果集 while(rs.next()){//遍歷結(jié)果集 out.println("<tr>"); out.println("<td>" + rs.getString("name") + "</td>");//取出列值 out.println("</tr>"); } out.println("</table>"); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if(rs != null) { rs.close(); rs = null; } if(stmt != null) { stmt.close(); stmt= null; } if(conn != null) { conn.close(); conn = null; } } catch (SQLException e) { e.printStackTrace(); } } }
輸出截圖:
新聞熱點(diǎn)
疑難解答
圖片精選