和“夫子”一起學simple:搭建簡單平臺
首先了解下我的開發(fā)工具,sql server 2000數(shù)據(jù)庫和eclipse開發(fā)平臺和tomcat6 web服務器。在測試數(shù)據(jù)庫連接的過程中,遇到了不少問題,首先需要sql server的驅(qū)動,
驅(qū)動下載sqljdbc.jar
下面是驅(qū)動和URL的寫法。
Driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
Url=”jdbc:sqlserver://localhost:1433;DatabaseName=simple”
2000,2005,2008有沒有區(qū)別,大家查查資料吧,只需google或百度一下即可。
如果上面配置測試時出現(xiàn)下面的錯誤信息
com.microsoft.sqlserver.jdbc.SQLServerException: 到主機的TCP/IP 連接失敗。java.net.ConnectException: Connection refused: connect
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.loginWithoutFailover(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
針對sql server 2000而言可能是系統(tǒng)引起的,如果你的系統(tǒng)是sp3或sp4版本,需要下個sql server 的補丁包就可以了。如是是sql server 2005,可能是tcp/ip服務沒有打開,因為2005默認是關(guān)閉的。打開“SQL Server Configuration Manager”,展開“SQL Server 2005 網(wǎng)絡配置”,選中“MSSQLSERVER的協(xié)議”,在右面的窗口中,右擊“TCP/IP”,選啟動。 最后,如果仍然不成功,可能是防火墻對1433端口的限制??梢赃M入防火墻,把例外選項中增加TCP對應1433端口,UDP對應1433端口。
以上問題只是針對sql server,選擇其他數(shù)據(jù)庫(mysql oracle)的不需考慮。數(shù)據(jù)庫問題搞定以后,下面我們動手寫程序吧。忘記告訴你一個很重要的問題,simple可以拋棄數(shù)據(jù)庫而啟動。下面讓我們先寫個沒有數(shù)據(jù)庫的項目吧。暫且起名test.下面應該都是我們Web開發(fā)者熟悉的、
第一步:添加我們需要的jar文件,simple網(wǎng)站都可以下載的。
第二步:配置WEB-INF/web.xml,里面需要存在的內(nèi)容有。
- <filter>
- <filter-name>actionFilter< span>filter-name>
- <filter-class>net.simpleframework.web.page.PageFilter< span>filter-class>
- < span>filter>
- <filter-mapping>
- <filter-name>actionFilter< span>filter-name>
- <url-pattern>*.jsp< span>url-pattern>
- < span>filter-mapping>
- <listener>
- <listener-class>net.simpleframework.web.page.PageEventAdapter< span>listener-class>
- < span>listener>
其他的東西我們以后在學習中加吧。因為現(xiàn)在先不考慮數(shù)據(jù)庫,所以現(xiàn)在不需要配置project.xml.
第三步:下面讓我們寫一個index.jsp,很簡單的內(nèi)容哦。
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- hello world
第四步:運行tomcat,看看效果吧。
貌似很難看。
第五步:加一個網(wǎng)站都有的頭和腳。代碼如下。
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <html>
- <body style="overflow: hidden;">
- <div id="t_header">
- <div class="top">
- </div>
- </div>
- <div id="t_main">
- hello world
- </div>
- <div id="t_footer">
- <a target="__blank" href="http://www.simpleframework.net/">www.google.com</a> 版權(quán)所有 Copyright © 20010-2010 All
- Rights Reserved.
- </div>
- </body>
- </html>
相應的index.xml內(nèi)容如下。
- <?xml version="1.0" encoding="UTF-8"?>
- <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="./xsd/default/simple.xsd">
- <scriptEval>first</scriptEval>
- <importCSS>
- <value>/template/resource/css/t.css</value>
- </importCSS>
- <importJavascript>
- <value>/template/resource/js/t.js</value>
- </importJavascript>
- </page>
當然為了美觀大方就要引入樣式和腳本.
可要記住了,引入樣式的是importCSS;引入腳本的是importJavascript
再次啟動tomcat看看結(jié)果吧。
自己覺得也比以前好看多了。下面就有一個問題,如果再寫一個頁面就要重寫頁頭和頁腳。很麻煩…仔細看了看simple發(fā)現(xiàn),其實很簡單就可以解決這個問題.
下面就多了幾個頁面:center.jsp中間頁面用來加載頁頭和頁腳.
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <html>
- <body style="overflow: hidden;">
- <%
- String center = request.getParameter("center");
- %>
- <jsp:include page="/template/header.jsp" flush="true"></jsp:include>
- <div id="t_main">
- <table width="100%" height="100%" border="0" cellpadding="0"
- cellspacing="0">
- <tr>
- <td valign="top" height="100%"><jsp:include page="<%=center%>"
- flush="true"></jsp:include></td>
- </tr>
- </table>
- </div>
- <jsp:include page="/template/footer.jsp" flush="true"></jsp:include>
- </body>
- </html>
我相信看到代碼就明白了吧,
/template/header.jsp
/template/footer.jsp
這兩個頁面代碼就不寫了,你們懂的。
Index.jsp的代碼是。
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <jsp:include page="/template/center.jsp" flush="true">
- <jsp:param value="/homepage.jsp" name="center"/>
- </jsp:include>
/homepage.jsp頁面是我們的真正要顯示的東西,也就是hello world的地方。
如果還有其他的頁面只需要改變jsp:param,是要顯示的頁面即可。真的很簡單,方便。頁面顯示效果和上圖一樣。
最后:看到simpeframework官網(wǎng)上的模塊,挺玄挺誘人。下面我們也加幾個,看看效果。
再看看代碼,在index.xml里僅僅加這么幾行代碼:
- <components>
- <layout name="homepageLayout" containerId="homepageLayout"
- jobManager="${net.simpleframework.organization.IJob.sj_manager}"
- draggable="true">
- <column width="25%">
- <pagelet module="weather" align="left" sync="false">
- <title value="天氣預報- 北京" />
- <options><![CDATA[#Mon Mar 21 17:16:45 CST 2011
- _weather_code=CHXX0008
- ]]></options>
- </pagelet>
- </column>
- <column width="75%">
- <pagelet module="rss" align="left" sync="false">
- <title value="新浪新聞" />
- <options><![CDATA[#Mon Mar 21 17:16:45 CST 2011
- _rss_tip=true
- _rss_url=http\://rss.sina.com.cn/news/marquee/ddt.xml
- _rss_times=0
- _rss_rows=6
- ]]></options>
- </pagelet>
- </column>
- </layout>
- </components>