亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

Struts初級教程(3)-結合數據庫應用

2024-09-05 00:17:22
字體:
來源:轉載
供稿:網友
這一節我們開始用Struts結合數據庫設計程序,主要將上一節的程序略做修改,如下所示:

效果圖:


顯示結果如下圖:





如果您輸入的是不合法的話,則如下圖:


程序修改步驟:

A、數據源配置
     在struts-config.xml文件中有一<data-sources>元素是用來配置應用所需要的數據源,數據源負責建立和特定數據庫的連接,許多數據源采用連接池的機制實現,即提高了數據庫的訪問性能。代碼片段如下:

<data-sources>
    <data-source key="DataSource" type="org.apache.commons.dbcp.BasicDataSource">
        <set-property property="driverClassName" value="com.mysql.jdbc.Driver" />
        <set-property property="url" value="jdbc:mysql://localhost:3306/struts1_login"/>
        <set-property property="username" value="root"/>
        <set-property property="password" value="5ihpp1314"/>
    </data-source>
</data-sources>
上面這段代碼配置了與MySQL數據庫的連接。<data-source>元素的key是一個別名,用于在應用程序中去的一個連接,元素type用來指定數據源的實現類。上面使用的是Apache軟件組織提供的DBCP數據源。所以你必須導入commons-dbcp.jar、commons-pool.ar、struts-legacy..jar這三個包和MySQL的驅動包:mysql-connector-java-5.0.5-bin.jar。
配置了數據源后,就可以在Action中訪問數據源了。

代碼如下所示:
//獲取Servlet上下文對象
ServletContext ctx = servlet.getServletContext();
//獲得數據源
DataSource ds = (DataSource) ctx.getAttribute("DataSource");
//獲取數據庫的連接
Connection conn = ds.getConnection();

B、修改Action
Action將取得數據源,得到一個數據庫的連接,把頁面傳近來的用戶名和密碼,通過jdbc與數據庫進行對比,如果存在轉到“success.jsp”并顯示其名稱,否則到錯誤頁面。

具體實現代碼如下所示:
public class LoginAction extends Action {
       public ActionForward execute(ActionMapping actionMapping,
                                        ActionForm actionForm, HttpServletRequest request,
                                            HttpServletResponse response) {
    LoginActionForm loginform = (LoginActionForm) actionForm;
    String username = loginform.getUsername();
    String userpass = loginform.getUserpass();
    ServletContext ctx = servlet.getServletContext();
    DataSource ds = (DataSource) ctx.getAttribute("DataSource");
    boolean flag = false;
    String sql = "select * from user where username='" + username
                            + "' and password='" + userpass + "'";
    try {
            Connection conn = ds.getConnection();
            Statement st = conn.createStatement();
            ResultSet rs = st.executeQuery(sql);
                while (rs.next()) {
                    flag = true;
                }
        } catch (Exception e) {
            e.printStackTrace();
        }
            String actionpath = "";
        if (flag) {
            request.setAttribute("username", username);
            actionpath = "success";
              } else {
            actionpath = "error";
              }
            return actionMapping.findForward(actionpath);
        }
}

C、修改頁面
如果登錄成功,通過EL顯示用戶名。
具體代碼如下:
<%@ page contentType="text/html; charset=GBK" %>
%@taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %
<html>
    <head>
        <title>
            success
        </title>
    </head>
    <body bgcolor="#ffffff">
        <h1>success.jsp demo</h1>
        <br>
        <h1>welcome
            <font color="red" size="8"><bean:write name="username"/></font>
            here,thanks
        </h1>
    </body>
</html>
引入struts的標簽,輸出用戶名稱。

提示:使用數據源配置,讓struts來管理不是太妥當,數據的相關操作應該屬于持久層的管理,不應該由上一層管理(Controller)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲理论在线a中文字幕| 7777精品久久久久久| 日韩视频一区在线| 青青久久av北条麻妃海外网| 国产一区二区三区18| 欧美极品少妇xxxxⅹ喷水| 夜夜嗨av一区二区三区免费区| 国产精品91一区| 激情av一区二区| 欧美综合在线观看| 国产成人高清激情视频在线观看| 久久精品视频中文字幕| 国产视频自拍一区| 久久久人成影片一区二区三区| 国产在线日韩在线| 日韩精品在线免费播放| 国产精品毛片a∨一区二区三区|国| 精品女厕一区二区三区| 国产精品第七十二页| 欧美日韩视频在线| 欧美高清视频在线播放| 97色伦亚洲国产| 国产偷亚洲偷欧美偷精品| 亚洲社区在线观看| 日产日韩在线亚洲欧美| 成人在线一区二区| 北条麻妃99精品青青久久| 精品中文字幕视频| 欧美性猛交xxxx免费看久久久| 国产乱肥老妇国产一区二| 欧美性猛交丰臀xxxxx网站| 国产成人福利视频| 国产精品美女无圣光视频| 精品亚洲国产成av人片传媒| 久久这里有精品| 国产精品久久久久久久久久新婚| 在线观看免费高清视频97| 97精品国产97久久久久久春色| 69久久夜色精品国产7777| 国产美女精品视频| 久久久久国产视频| 在线观看91久久久久久| 国产成人在线一区二区| 一本色道久久88综合亚洲精品ⅰ| 在线精品国产欧美| 少妇高潮久久久久久潘金莲| 日韩电影免费观看在线观看| 日本欧美在线视频| 亚洲精品999| 国产精品精品视频一区二区三区| 九九热视频这里只有精品| 日韩欧美在线网址| 欧美最猛性xxxxx(亚洲精品)| 亚洲奶大毛多的老太婆| 美女999久久久精品视频| 亚洲国产一区二区三区在线观看| 色777狠狠综合秋免鲁丝| 在线成人一区二区| 国产日韩在线看片| 亚洲人午夜色婷婷| 欧美大片在线看| 亚洲欧美日本精品| 国语自产精品视频在线看一大j8| 久久久久久有精品国产| 超碰精品一区二区三区乱码| 亚洲精品久久久久中文字幕二区| 亚洲视频网站在线观看| 日韩精品久久久久| 高潮白浆女日韩av免费看| 97国产真实伦对白精彩视频8| 91久久国产精品| 久久乐国产精品| 久久天堂av综合合色| 国产精品永久免费在线| 国内精品久久久久| 国内精品模特av私拍在线观看| 日韩小视频网址| 欧美专区中文字幕| 精品国产精品三级精品av网址| 91最新在线免费观看| 国产精品一区久久久| 欧美高清电影在线看| 久久国产精品久久久| 伦理中文字幕亚洲| 在线色欧美三级视频| 国产视频久久网| 亚洲人在线观看| 91免费国产网站| 日韩欧美成人区| 国产精品视频内| 在线亚洲欧美视频| 国产午夜精品一区二区三区| 91深夜福利视频| 大桥未久av一区二区三区| 在线观看视频99| 久久国产视频网站| 亚洲精品国产拍免费91在线| 欧美激情啊啊啊| 日韩精品福利在线| 亚洲第一免费播放区| 97久久精品人人澡人人爽缅北| 97超碰色婷婷| 欧洲亚洲女同hd| 久久亚洲精品毛片| 伊人成人开心激情综合网| 久久久亚洲天堂| 欧美三级欧美成人高清www| 欧美裸体视频网站| 欧美久久精品一级黑人c片| 日韩精品视频在线观看免费| 国内精品久久久久伊人av| 国产精品美女999| 北条麻妃99精品青青久久| 人妖精品videosex性欧美| 亚洲国模精品私拍| 亚洲电影免费观看| 日韩在线免费av| 国产精品欧美一区二区| 91色琪琪电影亚洲精品久久| 91精品国产精品| 成人性教育视频在线观看| xxx一区二区| 亚洲第一精品自拍| 亚洲视频在线视频| 成人黄色在线观看| 青青草99啪国产免费| 国产精品久久久久久超碰| 精品日韩美女的视频高清| 国产成人一区二区在线| 主播福利视频一区| 亚洲国产欧美一区二区三区久久| 欧美成人亚洲成人| 日韩国产高清污视频在线观看| 久久成人精品电影| 日韩精品免费在线观看| 丝袜亚洲另类欧美重口| 91在线视频九色| 欧美天堂在线观看| 亚洲精品女av网站| 久久九九国产精品怡红院| 国产一区二区黑人欧美xxxx| 国产精品va在线| 国产精品一区二区久久久久| 日韩av男人的天堂| 亚洲一区av在线播放| 亚洲偷熟乱区亚洲香蕉av| 国产精品久久久久久久app| 91久久精品国产91久久| 伊人亚洲福利一区二区三区| 欧美日韩美女在线观看| 午夜精品久久久久久久99热浪潮| 宅男66日本亚洲欧美视频| 91九色综合久久| 国产精品高潮呻吟久久av无限| 97精品久久久中文字幕免费| 亚洲综合中文字幕在线观看| 国产一区二区日韩精品欧美精品| 日韩欧美在线免费观看| 亚洲欧洲自拍偷拍| 欧美亚洲日本黄色| 91精品国产色综合久久不卡98| 日韩av最新在线观看| 国产日韩精品视频| 欧美激情一区二区三级高清视频|