起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3848|回复: 7

[结贴] 现在有需求是已经有了html页面,需要访问X5的数据库

[复制链接]

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
发表于 2016-11-10 13:21:13 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
现在有需求是已经有了html页面,页面发送请求访问X5的数据库。实现这样的功能,我是想用sevlet写个服务,但是没有写过,sevlet怎么样在X5里使用,以及怎么连接X5的数据库,怎么与html连接,有详细的教程吗?大神

1

主题

1831

帖子

821

积分

高级会员

Rank: 4

积分
821
QQ
发表于 2016-11-10 15:26:37 | 显示全部楼层
x5数据库是标准的mysql数据库,与HTML连接和mysql一样,要写sevlet可以在tomcat环境中自己写
回复 支持 反对

使用道具 举报

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
 楼主| 发表于 2016-11-10 15:58:05 | 显示全部楼层
大雁子 发表于 2016-11-10 15:26
x5数据库是标准的mysql数据库,与HTML连接和mysql一样,要写sevlet可以在tomcat环境中自己写 ...

意思是可以写个java项目,然后打成war包放在X5使用的tomcat下?java项目里面连接数据库?
回复 支持 反对

使用道具 举报

1

主题

1831

帖子

821

积分

高级会员

Rank: 4

积分
821
QQ
发表于 2016-11-10 16:21:40 | 显示全部楼层
可以
回复

使用道具 举报

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
 楼主| 发表于 2016-11-10 21:27:31 | 显示全部楼层

用mybatis框架以及sevlet作为项目的框架也可以吧?
回复 支持 反对

使用道具 举报

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
 楼主| 发表于 2016-11-10 21:29:48 | 显示全部楼层

其实我想在X5里面写代码,不想单独做个项目出来,不知道有办法吗?baas只能在.w文件里写请求,我现在的需求是在项目外的HTML文件里发送请求,谢谢~
回复 支持 反对

使用道具 举报

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
 楼主| 发表于 2016-11-11 10:25:21 | 显示全部楼层

运行这个代码连接X5里的数据库,报错,代码是写在新建的java项目里的,打算以后打包成war包放服务器上
package com;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class DatabaseAccess
*/
public class DB extends HttpServlet {
        private static final long serialVersionUID = 1L;
        // JDBC 驱动名及数据库 URL
        static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
        static final String DB_URL = "jdbc:mysql://localhost:3306/JTBWG/DBO/TABLE";
       
        // 数据库的用户名与密码,需要根据自己的设置
        static final String USER = "root";
        static final String PASS = "x5";
    /**
     * @see HttpServlet#HttpServlet()
     */
    public DB() {
        super();
        // TODO Auto-generated constructor stub
    }
    /**
         * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                String name = request.getParameter("name");
                String age = request.getParameter("age");
                System.out.println("name="+name+",age="+age);
                Connection conn = null;
                Statement stmt = null;
                // 设置响应内容类型
                response.setContentType("text/html;charset=UTF-8");
                PrintWriter out = response.getWriter();
                try{
                        // 注册 JDBC 驱动器
                        Class.forName("com.mysql.jdbc.Driver");
                       
                        // 打开一个连接
                        conn = DriverManager.getConnection(DB_URL,USER,PASS);

                        // 执行 SQL 查询
                                                stmt = conn.createStatement();
                                                String sql;
                                                sql = "SELECT FUserName,version FROM TCommentInfo";
                                                ResultSet rs = stmt.executeQuery(sql);

                                                // 展开结果集数据库
                                                while(rs.next()){
                                                        // 通过字段检索
                                                        String FUserName = rs.getString("FUserName");
                                                        String version = rs.getString("version");
                                                       
                                                        // 输出数据
                                                        out.println("FUserName: " + FUserName);
                                                        out.println(", version: " + version);
                                                }
                                                out.println("</body></html>");
                                               
                                                // 完成后关闭
                                                rs.close();
                                                stmt.close();
                                                conn.close();
                                        } catch(SQLException se) {
                                                // 处理 JDBC 错误
                                                se.printStackTrace();
                                        } catch(Exception e) {
                                                // 处理 Class.forName 错误
                                                e.printStackTrace();
                                        }finally{
                                                // 最后是用于关闭资源的块
                                                try{
                                                        if(stmt!=null)
                                                        stmt.close();
                                                }catch(SQLException se2){
                                                }
                                                try{
                                                        if(conn!=null)
                                                                conn.close();
                                                        }catch(SQLException se){
                                                                se.printStackTrace();
                                                        }
                                                }
                                          
                                        }
        /**
         * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                // TODO Auto-generated method stub
                doGet(request, response);
        }
}


下面是报的错误~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
十一月 11, 2016 10:23:26 上午 org.apache.catalina.startup.Catalina start
信息: Server startup in 256 ms
name='jerry',age='21'
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:

** BEGIN NESTED EXCEPTION **

java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused: connect

STACKTRACE:

java.net.SocketException: java.net.ConnectException: Connection refused: connect
        at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:2666)
        at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at com.DB.doGet(DB.java:48)
        at com.test.doGet(test.java:16)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Unknown Source)


** END NESTED EXCEPTION **



Last packet sent to the server was 8 ms ago.
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:2741)
        at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at com.DB.doGet(DB.java:48)
        at com.test.doGet(test.java:16)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Unknown Source)

回复 支持 反对

使用道具 举报

52

主题

173

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
 楼主| 发表于 2016-11-11 11:07:22 | 显示全部楼层

已经解决,是没有打开服务
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-28 19:41 , Processed in 0.059523 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表