在eclipse中安装好app engine与gwt插件后,就做了GWT连接数据库的测试,但是在APP engine中总是报错
java.security.AccessControlException access denied (java.net.SocketPermission localhost resolve)
就这个问题我提过问,没有人解决,具体的报错信息大家可以看这里http://www.iteye.com/problems/33692
查了下资料,google的官方文档上说在tomcat下,当servlet访问容器外部资源时,要时行授权,如果没有授权就会报没有权限的问题了.
于入进入tomcat-home/conf/catalina.policy,发现这个文件里面己经有了一些授权的声明如下:
grant codeBase "file:${java.home}/lib/-" {
permission java.security.AllPermission;
};
于是我就想是不是我的App Engine里面没有类似的授权呢,于是将GWT 项目打成war包发布到tomcat 下运行,没有任何问题.
GWT连接数据库代码:
public class UserListServiceImpl extends RemoteServiceServlet implements UserListService{
public List<String> getUserList(){
try {
// Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
// Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=zg", "sa", "sa");
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/hibernate", "root", "root");
List<String> userList = new ArrayList<String>();
Statement stmt = null;
ResultSet rs = null;
try {
conn = DBConnection.getConnection();
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from user");
while (rs.next()) {
userList.add(rs.getString(1) + " " + rs.getString(2) + " " + rs.getString(3));
System.out.println(rs.getString(1) + " " + rs.getString(2) + " " + rs.getString(3));
}
}
catch (SQLException e) {
e.printStackTrace();
}
return userList;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
与正常的数据库连接没有任何区别,关键是上面的访问权限的问题
分享到:
相关推荐
标题 "Gwt连接数据库的案例" 涉及的核心知识点是使用Google Web Toolkit (GWT) 这一JavaScript开发框架来实现与后端数据库的交互。GWT是一种用于构建高性能、跨浏览器的富互联网应用程序(RIA)的工具,它允许开发者...
标题 "GWT 连接数据库问题解决及例子" 指的是使用Google Web Toolkit (GWT) 进行数据库交互的实践教程。GWT 是一个开源的Java框架,用于开发和构建高性能、跨浏览器的富互联网应用程序(RIA)。在GWT中连接数据库...
`src`则包含源代码,可能有GWT客户端代码、服务端代码和数据库连接代码。 `WylpeaceSelect.launch`可能是Eclipse的一个运行配置文件,用于启动和调试应用。这可能定义了如何运行GWT的开发服务器,该服务器在开发...
2. **配置文件(hibernate.cfg.xml)**:定义数据库连接信息、方言、缓存策略等。 3. **实体类(Entity)**:代表数据库表,使用`@Entity`注解标识,属性对应表字段,`@Id`注解标识主键。 4. **Session接口**:持久...
5. 使用Hibernate配置数据库连接和实体映射,处理数据持久化。 6. 在服务器端,使用Spring的DispatcherServlet接收GWT的RPC请求,并路由到相应的服务方法。 这样的整合方案提供了强大的开发能力和灵活性,可以构建...
此外,还可以探索如何使用GWT进行数据持久化,如通过GWT的GAE(Google App Engine)支持连接到数据库,或者使用GWT的History API实现页面导航。 另一个实例可能是构建一个实时协作编辑的文本编辑器,利用GWT的事件...
它首先加载PostgreSQL的JDBC驱动,然后建立与数据库的连接,构造SQL插入语句,使用PreparedStatement预编译SQL以防止SQL注入,最后执行插入操作并关闭数据库连接。 在客户端,`Register.java`中的`AsyncCallback`...
gwt FAQ 介绍控件和方法 split panel中放置一棵树 客户端与服务器交互的例子 ...客户端连接数据库的例子 tabbar用法示例 解析xml的公共方法 建立数据库连接的公共方法 调用数据库连接公共方法并执行sql TabPanel的实现
在本文中,我们将深入探讨如何将Google Web Toolkit (GWT) 整合到Hibernate框架中,以便在Web应用中实现数据库操作。通过一个简单的新增和查询实例,我们将阐述这一集成过程的关键步骤,并讨论相关配置文件和编程...
2. **配置Mybatis**:设置Mybatis的全局配置文件,包括数据库连接信息,以及Mapper XML文件,定义SQL查询。 3. **创建SmartGwt组件**:根据业务需求设计并实现SmartGwt的用户界面组件,这些组件通常会与Spring管理...
2. **数据绑定**:支持自动的数据绑定,可以方便地连接到各种数据源,如数据库、服务端接口等。 3. **AJAX和异步通信**:利用GWT的RPC机制,实现客户端和服务器之间的高效异步通信。 4. **响应式设计**:SmartGWT...
- **设计:** 创建系统架构,包括前后端分离、数据库设计、接口定义等。 - **编码:** 使用GWT和Java编写客户端和服务器端代码。 - **测试:** 进行单元测试、集成测试,确保功能正确性和性能。 - **部署:** 将...
SmartGwt 连接Mysql数据库,实现增删改查操作。 使用的是ee版的客户端dataSource,可以不用写 gwt RPC 远程调用代码。已含所有jar包,通过 Eclipse>File>Import>Exist Projects~>Select archive~>导入即可。需要建立...
整个过程可能涉及到的问题包括:数据库连接问题、实体类与数据库表的映射错误、Hibernate配置错误、GWTEXT 使用不当等。解决这些问题通常需要查看日志信息,调试代码,或者查阅相关文档。 总的来说,GWTEXT 与...
在本系列文章中,我们将逐步探索如何使用GWT创建一个在线比萨饼销售应用Slicr,涉及到如何设置Apache Derby数据库作为后端数据存储,并将GWT前端与之连接。通过这个过程,你将深入理解GWT的各个组成部分以及如何构建...
6. **数据库配置**:项目通常会有数据库连接配置,例如在`persistence.xml`文件中定义JPA(Java Persistence API)的配置,或者在Spring配置文件中配置数据源和Hibernate等ORM工具。 7. **部署**:为了运行这个应用...
3. **连接数据库**:在Servlet中建立与MySQL数据库的连接。 4. **执行查询**:编写SQL查询语句并执行。 ##### 6.9 在GWT应用程序中准备RPC Provider 1. **创建RPC Provider**:在GWT项目中定义一个RPC Provider。 ...
这一步通常涉及到设置数据库连接池、表结构等信息,以便于数据服务Servlet能够正确地读取和写入数据。 #### 定义客户端回调类 客户端回调类用于处理服务器端方法执行的结果。当服务器端方法执行完毕后,会将结果...