`
emavaj
  • 浏览: 49874 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Flex 的 Java端

    博客分类:
  • Flex
阅读更多

Flex 做表现层,需要Java提供数据

这个是自然也必然的选择

(当然可以用PHP,但是...觉得合适吗?)

 

Java端如何写才好?

 

下面是我的写法:

UserDao层,就是Dao,数据访问对象

/**.
 * 用户实体交互对象
 * @author eMavaj
 * 2010-5-28
 */
public class UserDao {
	/**日志对象.*/
	private static Log log = LogFactory.getLog(UserDao.class);
	
	/**.
	 * 根据用户名密码得到用户实体
	 * @param username 用户名
	 * @param password 密码
	 * @return 当前用户
	 */
	public User loadUserByUsernameAndPassword(final String username, final String password) {
		/**得到结果集.*/
		ResultSet rs = DataBaseUtil.getInstance().executeQuery(
				"select * from t_user as u where u.username = ? and u.password = ?", 
				new Object[]{username, password});
		User u = new User();
		/**取第一条记录.*/
		try {
			rs.next();
			u.setUsername(rs.getString("username_"));
			u.setPassword(rs.getString("password_"));
			u.setId(rs.getInt("id"));
			u.setMailbox(rs.getString("mailbox_"));
			u.setRegisterDate(rs.getDate("registerDate_"));
			u.setEndDate(rs.getDate("endDate_"));
		} catch (SQLException e) {
			log.error("ResultSet游标错误,没有下一条记录");
			e.printStackTrace();
		}
		return u;
	}
	
	/**.
	 * 取得所有用户对象
	 * @return 返回对象集合
	 */
	@SuppressWarnings("unchecked")
	public ArrayList loadAllUsers() {
		/**查询得到结果集.*/
		ResultSet rs = DataBaseUtil.getInstance().executeQuery(
				"select * from t_user as u", new Object[]{});
		/**返回的集合.*/
		ArrayList users = new ArrayList();
		try {
			while (rs.next()) {
				users.add(new User(
						rs.getInt("id"),
						rs.getString("username_"),
						rs.getString("password_"),
						rs.getDate("registerDate_"),
						rs.getString("mailbox_"),
						rs.getDate("endDate_")));
			}
		} catch (SQLException e) {
			log.error("ResultSet游标错误,没有下一条记录");
			e.printStackTrace();
		}
		return users;
	}
}

 

这一层是必不可少的,是和数据库交互的一层

上面的例子代码,有了2种返回

一种是对象,一种是集合

 

当这2中返回,到了Flex的时候,分别是Object 和 ArrayCollection

可以使用 dataField 进行绑定的所需要的地方

 

但是,Flex 不直接使用这一层的数据

而是再加入一层

 

Service层:

/**.
 * 用户服务 Flex调用方法
 * @author eMavaj
 * 2010-5-28
 */
public class UserService {
	/**用户实体操作对象.*/
	private static UserDao userDao = new UserDao();
	/**.
	 * 用户登录服务
	 * @param username 用户名
	 * @param password 密码
	 * @return 返回当前用户信息
	 */
	public User login(String username, String password) {
		return userDao.loadUserByUsernameAndPassword(username, password);
	}
	
	/**.
	 * 取得所有用户实体
	 * @return 实体集合
	 */
	@SuppressWarnings("unchecked")
	public ArrayList loadAllUsers() {
		return userDao.loadAllUsers();
	}
}

 

这一层,相当于公开的服务,展示了Java端可以给Flex远程调用的方法

这一层的原则只有一个,尽量简单

可以看到我上面的代码都是直接返回了Dao层的返回值,几乎没有什么逻辑

 

至于其它什么大道理,如何设计,由于篇幅有限,就不在这里写了

 

PS:

其实这个例子的Dao层,本应该是一个接口,然后再到实现类

而Service层持有的不是Dao层的具体类,而是Dao层的接口

这里直接写出了具体类,是为了简单起见

0
1
分享到:
评论

相关推荐

    flex+java+mysql登录

    3. Java后台处理:在Java端,你需要创建一个对应的Servlet或Spring MVC控制器来处理来自Flex的请求。这个控制器会接收到Flex传递过来的登录信息,然后使用JDBC(Java Database Connectivity)API与MySQL数据库进行...

    flex java实例

    在Flex Java实例中,Java作为服务器端技术,处理业务逻辑和数据管理。通常,Java Web应用会使用Spring MVC或Struts等框架来组织和管理控制器、模型和服务。Java后端负责与数据库交互,执行CRUD操作,然后通过HTTP...

    Flex与Java的交互

    在Java端,我们需要部署一个符合WSDL(Web Services Description Language)规范的服务。在Flex客户端,配置WebService组件,指定WSDL URL,然后可以像调用本地方法一样调用Web服务的方法。 ```xml <!-- Flex代码 -...

    flex flex和 java交互

    3. **定义数据模型**:在Java端创建数据模型类,这些类将用于传输数据到Flex客户端。 4. **搭建Java服务**:使用Java Servlet或Spring MVC等框架创建一个处理Flex请求的服务。这个服务会接收Flex发送的AMF请求,...

    Java_Flex,Java_Flex,Java_Flex

    Java_Flex技术结合了Java的强大后端处理能力和Flex的富互联网应用程序(RIA)前端展示功能,为开发跨平台、交互性强的Web应用提供了强大的解决方案。本文将深入探讨Java与Flex的集成,以及如何利用这两项技术的优势...

    flex java 项目整合.rar

    在Java端创建RESTful服务,如使用JAX-RS(Java API for RESTful Web Services)标准或Jersey框架,然后在Flex端使用HTTPService组件来发送HTTP请求和接收响应。这种方式虽然效率稍低,但具有更好的跨平台性和可伸缩...

    Flex + Java 最佳实例(附工程)

    而Java作为后端开发语言,提供了强大的服务器端处理能力和稳定的安全性。本实例旨在为初学者和开发者提供一个直观的学习平台,通过实际项目案例,深入理解Flex与Java的集成开发。 一、Flex简介 Flex是一个基于...

    flex+java入门

    5. **JOTO对象映射**:了解如何在Flex客户端声明Java对象,以及在服务器端如何处理这些对象。这涉及到数据类型的映射和对象的序列化。 6. **事件驱动编程**:在Flex中,事件驱动模型是主要的编程模式。学习如何监听...

    Flex和java交互搭建

    BlazeDS是Adobe提供的一个免费的服务器端解决方案,它提供了AMF(Action Message Format)协议,使得Flex客户端能够与Java应用服务器进行低延迟、高性能的数据交换。AMF是一种二进制数据格式,它比传统的HTTP或XML更...

    Java与Flex通信的Java端代码

    在“JavaFlex项目”这个压缩包中,很可能包含了使用Java和Flex进行通信的示例代码,包括Java端的服务实现、BlazeDS配置以及Flex端的HTTPService或WebService调用。通过分析和学习这些代码,你可以更好地理解和掌握...

    flex+java 项目创建 和 例子

    这些例子会展示如何在Flex中创建UI组件,定义事件处理程序,以及如何在Java端处理请求和返回响应。 5. **部署和测试**:介绍如何将Flex应用打包成SWF文件并部署到Web服务器,以及如何与Java应用程序进行集成测试,...

    flex与java通信的完整demo

    Flex与Java通信是Web开发中的一个重要技术组合,它允许用户在浏览器端利用Flash的富互联网应用(RIA)特性,通过ActionScript与服务器端的Java应用程序进行数据交互。本压缩包包含了一个完整的Flex与Java通信的示例...

    新建Flex+Java的WEB项目

    9. **数据模型和服务接口**:在Java端定义业务实体类和数据访问接口,比如DAO(Data Access Object)和Service类,它们负责与数据库交互和提供业务逻辑。 10. **数据库连接**:后端通常需要与数据库交互,如MySQL、...

    flex与java通信

    - BlazeDS/LCDS:Adobe提供的免费服务器端组件,支持AMF协议,使得Flex客户端可以高效地与Java服务器进行数据交换。 - 创建Java服务:在Java服务器端创建服务类,定义需要暴露的方法。 - 配置BlazeDS:在服务器...

    flex+java+mysql

    2. Java:Java是一种广泛使用的面向对象的编程语言,特别适合于服务器端开发。在这个项目中,Java可能作为后端服务,处理来自Flex前端的HTTP请求,如用户的登录验证。开发者可能使用了Servlet或者Spring MVC等框架来...

    flex整合java开发的资料

    4. **Flex+Java简单例子.doc**:这个文档可能包含了一些基础的Flex与Java集成的例子,可能涵盖如何创建Flex客户端,定义服务接口,以及如何在Java服务器端实现这些接口,最后展示如何在Flex应用中调用这些服务。...

    Flex与java通讯

    在Java端,我们可以使用Servlet来接收和响应Flex的请求。对于更复杂的业务逻辑管理,Spring框架提供了集成BlazeDS的解决方案,可以轻松地将Flex与Spring服务和DAO层连接起来。 6. **Security and Cross-Domain ...

    Flex与Java实现通信

    BlazeDS是一个开放源代码的服务器端Java远程处理和Web消息传递技术,它允许开发者轻松地将Flex和AIR应用程序连接到后端服务器上运行的Java对象。通过BlazeDS,开发者可以: - 实现客户端与服务器之间的实时通信。 -...

    flex-java互相整合及其示例

    这涉及到Flex客户端与Java服务器端的通信机制,如使用AMF(Action Message Format)进行二进制数据传输,实现高效的远程方法调用。AMF能提高数据交换的效率,并且使得Java对象可以直接在Flex中序列化和反序列化。...

Global site tag (gtag.js) - Google Analytics