//第一个java文件
package org.rjb.java;
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
//第二个java文件
package org.rjb.java;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
public class UserDao {
public static Connection getConnection(){
Connection c=null;
try{
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/userDb";
String username="root";
String password="root";
Class.forName(driver);
c=DriverManager.getConnection(url,username,password);
}catch(Exception e){
System.out.println(e.getMessage());
}
return c;
}
public List getAllUser()throws SQLException{
Connection c=getConnection();
Statement st=c.createStatement();
ResultSet rs=st.executeQuery("select * from userinfo");
ArrayList userList=new ArrayList<User>();
while(rs.next()){
User u=new User();
u.setName(rs.getString("name"));
userList.add(u);
}
return userList;
} }
//as文件
package org.rjb.flex
{
[RemoteClass(alias="org.rjb.java.User")]
public class User
{
private var _name:String;
public function User()
{
}
public function get name():String{
return this._name;
}
public function set name(name:String):void{
this._name=name;
}
}
}
//mxml文件<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:RemoteObject id="ud" destination="UserDao" result="onResult(event)" fault="onFault
()" />
<mx:DataGrid dataProvider="{users}">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="name" />
</mx:columns>
</mx:DataGrid>
<mx:Label id="info" />
<mx:Button label="click" click="clickFun()" />
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
[Bindable]
public var users:ArrayCollection=new ArrayCollection();
public function clickFun():void{
ud.getAllUser();
}
public function onResult(event:ResultEvent):void{
users=ArrayCollection(event.result);
info.text="get data successfully";
}
public function onFault():void{
info.text="Error";
}
]]>
</mx:Script>
</mx:Application>//remoting-config.xml文件<?xml version="1.0" encoding="UTF-8"?>
<service id="remoting-service"
class="flex.messaging.services.RemotingService"> <adapters>
<adapter-definition id="java-object"
class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
</adapters> <default-channels>
<channel ref="my-amf"/>
</default-channels>
<destination id="UserDao">
<properties>
<source>org.rjb.java.UserDao</source>
</properties>
</destination></service>这是网上的一个例子,我完全按照上面说的这样写,问什么运行后总是得到error,貌似连接不到数据库啊??还有,用户用配置services-config.xml这个文件??在线等。
package org.rjb.java;
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
//第二个java文件
package org.rjb.java;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
public class UserDao {
public static Connection getConnection(){
Connection c=null;
try{
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/userDb";
String username="root";
String password="root";
Class.forName(driver);
c=DriverManager.getConnection(url,username,password);
}catch(Exception e){
System.out.println(e.getMessage());
}
return c;
}
public List getAllUser()throws SQLException{
Connection c=getConnection();
Statement st=c.createStatement();
ResultSet rs=st.executeQuery("select * from userinfo");
ArrayList userList=new ArrayList<User>();
while(rs.next()){
User u=new User();
u.setName(rs.getString("name"));
userList.add(u);
}
return userList;
} }
//as文件
package org.rjb.flex
{
[RemoteClass(alias="org.rjb.java.User")]
public class User
{
private var _name:String;
public function User()
{
}
public function get name():String{
return this._name;
}
public function set name(name:String):void{
this._name=name;
}
}
}
//mxml文件<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:RemoteObject id="ud" destination="UserDao" result="onResult(event)" fault="onFault
()" />
<mx:DataGrid dataProvider="{users}">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="name" />
</mx:columns>
</mx:DataGrid>
<mx:Label id="info" />
<mx:Button label="click" click="clickFun()" />
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
[Bindable]
public var users:ArrayCollection=new ArrayCollection();
public function clickFun():void{
ud.getAllUser();
}
public function onResult(event:ResultEvent):void{
users=ArrayCollection(event.result);
info.text="get data successfully";
}
public function onFault():void{
info.text="Error";
}
]]>
</mx:Script>
</mx:Application>//remoting-config.xml文件<?xml version="1.0" encoding="UTF-8"?>
<service id="remoting-service"
class="flex.messaging.services.RemotingService"> <adapters>
<adapter-definition id="java-object"
class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
</adapters> <default-channels>
<channel ref="my-amf"/>
</default-channels>
<destination id="UserDao">
<properties>
<source>org.rjb.java.UserDao</source>
</properties>
</destination></service>这是网上的一个例子,我完全按照上面说的这样写,问什么运行后总是得到error,貌似连接不到数据库啊??还有,用户用配置services-config.xml这个文件??在线等。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货