`
stephen4留雨
  • 浏览: 19013 次
文章分类
社区版块
存档分类
最新评论

BAE 开发经验 百度云平台 例子

 
阅读更多

最近研究了一下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. 一些经验
  1. bae环境 下web.xml 配置classpath 含糊不清,不建议使用。
  2. 【svn】拷贝(备份)项目文件夹要注意,把“.svn”隐藏目录一起拷出来的话,把它粘贴进去会出现“svn: 'conf' is not under version control”错误
  3. svn 跟 BAE在线编辑 不能同时使用,会产生冲突
  4. svn 随时会检测本地文件与服务器的区别,所以操作svn的时候不要太频繁太快,出现问题重启是一个很好的办法
  5. 看日志 debug信息 也很有用,可以看出很多信息
三、BAE开发流程建议
  1. 清楚BAE部署环境是什么
  2. 通读帮助文档
  3. 研究例子
  4. 学习百度开发者中心放出框架


最后附上例子:使用Spring3、HIbernate4、Frontia (在线演示:http://www.hahteng.com

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版本


例子下载:点击打开链接
分享到:
评论

相关推荐

    单片机C语言Proteus仿真实例可演奏的电子琴

    单片机C语言Proteus仿真实例可演奏的电子琴提取方式是百度网盘分享地址

    电力概预算软件.zip

    电力概预算软件

    setuptools-64.0.0.tar.gz

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    爱你老妈(HTML文件)母亲节快乐

    母亲节祝福html源码 很简单的代码,随机生成背景

    Python源码-三门问题的验证.py

    Python源码-三门问题的验证

    setuptools-62.6.0.tar.gz

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    Gomoku.zip

    五子棋游戏想必大家都非常熟悉,游戏规则十分简单。游戏开始后,玩家在游戏设置中选择人机对战,则系统执黑棋,玩家自己执白棋。双方轮流下一棋,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【技术】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes

    【财务管理】财务费用报销流程(含流程图).pdf

    【财务管理】财务费用报销流程(含流程图).pdf

    setuptools-46.3.0.zip

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    C语言课作业-五子棋GomokuZero.zip

    五子棋游戏想必大家都非常熟悉,游戏规则十分简单。游戏开始后,玩家在游戏设置中选择人机对战,则系统执黑棋,玩家自己执白棋。双方轮流下一棋,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【技术】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes

    setuptools-66.1.1.tar.gz

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    setuptools-65.6.3.tar.gz

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    setuptools-46.1.0.zip

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    setuptools-0.9.5.zip

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    setuptools-3.0.1.tar.gz

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    电力架空线路辅助设计软件.zip

    电力架空线路辅助设计软件

    红外辐射测温枪的测温原理2020年中国计算机设计大赛获奖作品展视频

    红外辐射测温枪的测温原理2020年中国计算机设计大赛获奖作品展视频提取方式是百度网盘分享地址

    实用五金手册计算软件.zip

    实用五金手册计算软件

    住宅小区配变电容量计算软件.zip

    住宅小区配变电容量计算软件

    中国大学生计算机设计大赛信息可视化国家二等奖计算机设计大赛

    中国大学生计算机设计大赛 信息可视化国家二等奖计算机设计大赛提取方式是百度网盘分享地址

Global site tag (gtag.js) - Google Analytics