1. Liferay 连接MySQL数据库, 创建配置文件
1.1 文件名: portal-ext.properties
1.2 文件路径: Liferay bundle 根目录
1.3 内容
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost:3306/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=123456
2. 使用Service Builder生成数据基本操作的代码
2.1 右键项目,选择创建Liferay Service Builder. 生成的service.xml默认路径是docroot/WEB-INF
![](/admin/blogs/data:image/png;base64,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)
![](/admin/blogs/data:image/png;base64,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)
2.2 service.xml 内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 6.0.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_6_0_0.dtd">
<service-builder package-path="com.project.gen">
<author>juhu</author>
<namespace>PR</namespace>
<entity name="PRProduct" local-service="true" remote-service="false">
<column name="productId" type="long" primary="true" />
<column name="productName" type="String" />
<column name="serialNumber" type="String" />
<column name="companyId" type="long" />
<column name="groupId" type="long" />
<order by="asc">
<order-column name="productName"></order-column>
</order>
<finder return-type="Collection" name="G_PN">
<finder-column name="groupId" />
<finder-column name="productName" />
</finder>
<finder return-type="Collection" name="GroupId">
<finder-column name="groupId" />
</finder>
<finder return-type="Collection" name="CompanyId">
<finder-column name="companyId" />
</finder>
</entity>
</service-builder>
2.3 运行service.xml文件。 右键Liferay/build service
2.4 A lot of code will be generated including model code, service code, table sql etc. For the generated code, what we should focus on is com/project/gen/service/impl/xxxLocalServiceImpl.java file and add the logic method here.
public class xxxLocalServiceImpl extends xxxLocalServiceBaseImpl {
}
3. Create portlets.
3.1 Right click project to create a new portlet.
3.2
分享到:
相关推荐
【标题】"liferay6增删改查例子"是一个基于Liferay6门户平台的开发实践,专注于用户个人信息管理的功能实现。在这个项目中,开发者利用Eclipse9作为集成开发环境,结合Liferay6.0版本,设计并实现了针对个人数据的全...
Service Builder是Liferay IDE(SDK)提供的一种代码生成方案,开发人员只需要编辑一个数据库的实体描述文件,即可根据本XML文件生成Spring层代码、Hibernate层代码、SQL、SQL索引创建文件、Spring和hibernate的配置...
liferay是一个强大的工具,开发者只用写一个持久层的配置文件,改工具就反向生成持久层和业务层的代码.简单说来,工具会自动生成hibernate层和spring层的相关代码,开发者只用关心控制层即可.
Liferay Spring Portlet MVC 使用 Maven 的 Liferay Spring Portlet MVC 项目模板。 Liferay EE 6.2.10.11 (GA1, SP710) Java 1.7 小门户 2.0 弹簧框架 4.1.5 基于注解的控制器配置 用法 $ git clone ...
- **添加/修改用户**: 通过管理界面完成用户信息的增删改查操作。 - **定义用户组/角色**: 组织结构和权限管理的基础单元。 ##### 第三节 Liferay Portal 内容和布局 - **布局**: 页面的设计结构。 - **内容**: ...
在本文中,我们将深入探讨基于Liferay 6.2的Portal开发,特别是在增删改查(CRUD)操作方面的实践。Liferay Portal是一款开源的企业级门户平台,它提供了丰富的功能来构建、管理和自定义Web应用。这个特定的例子是...
7. 数据驱动的Portlet:可能包含如何创建数据驱动的Portlet,这意味着Portlet能与数据库进行交互,实现数据的增删改查功能。 8. Liferay的特性:例如内置的用户管理、工作流、内容管理等高级功能,都是Liferay提供...
5. **CRUD操作**:在"CRUDDemo-portlet"中,开发者可以学习如何创建portlet以处理数据库中的增删改查操作,这涉及到JSP/FreeMarker的表单处理、Action类的业务逻辑实现、Service Builder的数据访问等。 6. **...
用Liferay6.1做的一个ext demo,通过struts可以对mysql进行增删改查(只做了查找和删除),里面的jsp会报错,不用管,能正常运行,数据库连接选项自己修改。 感谢http://hu437.iteye.com/blog/727055给了我很大的...
在Liferay Portal中,Hibernate可以帮助开发者更高效地管理数据,通过创建实体类和映射文件,可以将Java对象与数据库表进行关联,实现数据的增删改查。 Spring框架是另一个关键组件,它提供依赖注入(DI)和面向切...
4. **板块管理**:了解论坛板块的增删改查操作,包括设置板块权限、分类和排序等。 5. **积分系统**:熟悉积分的增减规则,以及如何根据用户的活动来调整其积分。 6. **通知与消息**:学习如何发送和接收系统通知...
在给定的文件中,“增删改查开发文档.docx”可能包含关于如何在portlet中实现基本的数据操作(CRUD:创建、读取、更新、删除)的指南,这通常是portlet功能的核心部分。开发者需要熟悉JDBC、Hibernate或Spring Data...