最近研究了一下BAE,其中遇到不少困难。现在我可以部署一个集成Spring、Hibernate 的项目了。总结一下:
一、项目架构
项目语言可以有4种,数据库有几个,选择视情况而定;但BAE环境无写入权限,(能写临时文件,鸡肋),文件储存管理就成了难点;没错,就是用“云储存”解决。软件把文件上传到另外一个地方,把相应文件URL写入数据库里面。百度开发者中心放出的Frontia框架对百度云储存做了封装,只需调用它的API就可以实现BCS(百度云储存)管理;这个框架还有其他的服务;
二、编程经验
1. Jar 包管理:
使用框架,少不了使用Jar包。BAE的的Jar包一定要放在如下目录结构的lib下面;不是建议,而是必须!不然跑不了,我觉得官方文档要在这里加红色重点。如果你想顺利地用BAE,你必须通读帮助文档。你用人家的东西,就得按人家的规矩。在开发当中,帮助文档具有很重要的位置。
我尝试过用Maven,我不知道官方说已经具有Maven功能是什么意思,但是它肯定没有“给POM.xml自动下包”功能。没这个功能我觉得它用maven不知有何用,坑。受虐了几天,我猜测它意思是,可以运行maven生成的war包,并可以使用命令行上传。我觉得意义不大咯,你不自动管理,还要我手动管理添加,而且给编程
带来不便,我还不如简单把jar包提出来,而且有些jar包必须是官方例子里面的版本的。总之,lib下jar 包测试通过,不要想得太高级。
Project
——src
——lib
——WebRoot
——WEB-INF
——web.xml
2. 项目调试、部署
如果你全部配置好了,当然可以选择war包上传,但是无法把一个BAE结构的项目生成war包(eclipse、tomcat都试过,不行);不过也相当地麻烦,所以我选择了SVN,把它连上后,你就可以控制每个文件,所以尽管它的规定的目录结构奇葩,我们也有可视化管理。如何调试呢?这样地目录结构,MyEclipse可不支持,跑不了,会报错;为了不出现混淆,开连个IDE,一个用于上传,一个用于测试,这样既可以做到100%模拟目录结构,绝对不会出错。直到三分钟前,我才顿悟这种模式太傻了。两个IDE用把新增的代码,复制过去另外一个IDE上传,工作量不是一般大,而且容易出错。现在发现BAE的目录只是只是lib文件夹的位置不同,只要把jar包放到WebRoot/WEB-INF/下IDE就可以读取,可以跑,当初我试过好像不行,是因为JDK不兼容。现在换了一个,测试通过了!!!这样就免去复制代码的工序了。还有一点,BAE的上数据库是不给外面应用链接的,所以换上本地数据库,只要不提交applicationContext-db.xml
、/WebRoot/WEB-INF/lib文件夹,以及项目配置文件就可以了。
(写总结挺有好处的哇,可以理清思路,但就是有点耗时间,)
3. 一些经验
- bae环境 下web.xml 配置classpath 含糊不清,不建议使用。
- 【svn】拷贝(备份)项目文件夹要注意,把“.svn”隐藏目录一起拷出来的话,把它粘贴进去会出现“svn: 'conf' is not under version control”错误
- svn 跟 BAE在线编辑 不能同时使用,会产生冲突
- svn 随时会检测本地文件与服务器的区别,所以操作svn的时候不要太频繁太快,出现问题重启是一个很好的办法
- 看日志 debug信息 也很有用,可以看出很多信息
三、BAE开发流程建议
- 清楚BAE部署环境是什么
- 通读帮助文档
- 研究例子
- 学习百度开发者中心放出框架
readme.txt
1.使用Spring3、HIbernate4、Frontia. (jar在BAE测试通过;BAE上跑:jar包放在项目目录下的lib文件夹;IDE跑:jar包放在 /WebRoot/WEB-INF/lib)
2.配置文件夹 :/SH_BAE_Demo/WebRoot/conf (Spring3、HIbernate4)
2.Frontia 框架路径:/SH_BAE_Demo/WebRoot/resources/Plugins/frontia
自定义使用:/SH_BAE_Demo/WebRoot/resources/js/frontia
3.后台管理路径:/admin
4.IDE跑的时候注意JDK版本
例子下载:点击打开链接
分享到:
相关推荐
基于BAE平台-微信公众号开发:用户相册功能
百度云bae wordpress sitemap 添加相关程序文件,请将附件中Sitemap.php app.conf 放在应用根目录下,更新即可生效。
助力开发-BAE及云推送打造云端应用
微信公众账号与百度BAE结合的DEMO,通过bae作为服务器,开发微信公众账号,可通用与易信。
百度BAE介绍、百度BAE介绍、百度BAE介绍、百度BAE介绍
百度云BAE将于3月9日开放 Web应用受欢迎.docx
BAE云专版可以安装在百度BAE云平台上,是Z-Blog团队专为BAE量身打造的Z-BlogPHP系统。 Z-BlogPHP是Z-Blog团队根据国内独立博客用户需求而全新开发的一款博客系统,作为领先的博客系统提供者,我们希望提供完善的...
PHP实例开发源码—HiBCS 百度BAE版.zip PHP实例开发源码—HiBCS 百度BAE版.zip PHP实例开发源码—HiBCS 百度BAE版.zip
国内常见的云计算平台对比,阿里云,百度BAE平台,腾讯云,华为云等等
基于BAE的微信java开发的token验证war包,token是bangbang。做了好几天终于出来了。
特别提示:本代码至少需百度应用引擎(BAE)中的百度云存储(BCS)支持 安装: config.php 填写BAE数据库名称 通过平台提供的phpMyAdmin访问 导入baefile.sql或使用install.php 不支持URL Rewrite请自行将no-...
由本人自己开发的基于百度云平台BAE的微信墙,内含使用说明!
PHP实例开发源码—HiBCS 百度BAE版.zip
可以运行在百度云服务器上 1、本示例是一个简单的ssh应用,对单表进行新增和查询操作; 2、使用ssh版本为struts2-core-2.3.1.2,spring-aop-3.0.5.RELEASE,hibernate-3.6.5.Final; 3、struts2的配置采用xml(目前不...
BAE概念&&原理 基本使用三步曲 高效在线调试 其他功能及服务 常见问题&&改进 BAE是什么 BAE是百度推出的网络应用
特别提示:本代码至少需百度应用引擎(BAE)中的百度云存储(BCS)支持 Licensed under the Apache License v2.0 http://www.apache.org/licenses/LICENSE-2.0 config.php 填写BAE数据库名称 通过平台提供的...
百度贴吧签到BAE版 云签到 解放双手! 每天6分
通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。 BAE提供了Yii PHP框架,用于开发大型Web应用。 版本:Bae_yii...
PHP实例开发源码—php微信公众平台自助引擎管理系统公测BAE版.zip PHP实例开发源码—php微信公众平台自助引擎管理系统公测BAE版.zip PHP实例开发源码—php微信公众平台自助引擎管理系统公测BAE版.zip
可以选择使用云引擎BAE(百度云开发者中心)、SAE(新浪云)或其他支持PHP的服务器。在服务器上创建项目文件夹,配置Web服务器和数据库。 开发与实现:根据业务需求,开始开发微信公众号的功能。开发者可以使用微信...