{"inframe":false,"title":"开始了解","hidden":false,"roles":{"demo":1,"dev":1},"children":[{"configs":{"itemId":"module"},"children":[{"configs":{"layout":"fit","itemId":"viewport1"},"children":[{"configs":{"autoScroll":"true","html":"<div class=\"wb_doc\">\n  <h2>开始了解<\/h2>\n  <p>在开始了解之前，<strong>我们建议在开发阶段使用Chrome浏览器来进行开发和调试<\/strong>，以获得WebBuilder最佳开发体验。<\/p>\n  <hr class=\"wb_hr\">\n  <h3>什么是WebBuilder<\/h3>\n  <p>WebBuilder是一款开源的可视化Web应用开发和运行平台。基于浏览器的集成开发环境，可视化和智能化的设计，能轻松完成Web应用和面向移动设备的应用开发；高效、稳定和可扩展的特点，适合复杂企业级应用的运行；跨平台、数据库和浏览器的架构，适应复杂的服务器和客户端环境；包含多项先进技术，使应用系统的开发更快捷和简单。<\/p>\n  <hr class=\"wb_hr\">\n  <h3>版本更新历史记录：<\/h3>\n  <ul>\n    <li>2016-03-13 发布 V7.2.1<\/li>\n    <ul>\n      <li>首页模块增加自定义且可维护的Portal。<\/li>\n      <li>增加在线用户列表等模块。<\/li>\n      <li>桌面和移动端应用增加toast样式消息框。<\/li>\n      <li>IDE增加使用normalName的代码下拉提示。<\/li>\n      <li>支持使用Wb.download方法导出图表。<\/li>\n      <li>Touch Select和Date允许选择空值。<\/li>\n      <li>修复ComboBox forceSelection按回车提交时没有assertValue的bug。<\/li>\n      <li>增加DataView, Touch CRUD和Portlets等示例应用。<\/li>\n    <\/ul>\n  <\/ul>\n  <ul>\n    <li>2016-02-25 发布 V7.2<\/li>\n    <ul>\n      <li>增加计划任务（支持使用ServerScript）、文件管理器（含移动版本）和系统日志等模块。<\/li>\n      <li>增加桌面和移动应用图表控件、邮件控件、Picker系列控件、Slider和RadioGroup/CheckGroup等控件。<\/li>\n      <li>IDE增加线程管理功能。<\/li>\n      <li>表格控件增加合计和总计功能。<\/li>\n      <li>修复代码自动重构和表格导出的bug。<\/li>\n      <li>增加地图、邮件、下拉框、表格、树等示例应用。<\/li>\n    <\/ul>\n  <\/ul>\n  <ul>\n    <li>2015-12-22 发布 V7.1.6<\/li>\n    <ul>\n      <li>支持使用移动设备本身的返回按键和左右划屏进行页面导航。<\/li>\n      <li>增加移动应用数据库浏览器和文件管理器管理工具。<\/li>\n      <li>支持单个文件控件上传多个文件。<\/li>\n      <li>增加Touch Grid滚动到最底部时的自动加载功能。<\/li>\n      <li>防止移动应用上下滑动时出现的系统默认滑动行为(微信提示内核信息，Chrome自动刷新等)。<\/li>\n      <li>增加包括苹果系统在内的多种界面主题，以及对一些界面主题方案的优化和调整。<\/li>\n      <li>管理工具模块和组件库组件增加。<\/li>\n      <li>常规应用及移动应用的示例增加。<\/li>\n    <\/ul>\n  <\/ul>\n  <ul>\n    <li>2015-11-16 发布 V7.1.2<\/li>\n    <ul>\n      <li>Touch组件库及移动App开发增强。<\/li>\n      <li>Bootstrap组件库及常规页面应用开发增强。<\/li>\n      <li>表格可直接导出映射至xls/xlsx，文本和打印预览。<\/li>\n      <li>数据库浏览器可导入gz，xls/xlsx，文本等多种格式数据。<\/li>\n      <li>修复Ext JS/CSS在某些浏览器下的bug。<\/li>\n      <li>Neptune主题的优化。<\/li>\n      <li>示例应用和文档的完善。<\/li>\n    <\/ul>\n  <\/ul>\n  <ul>\n    <li>2015-10-22 发布 V7.0.19<\/li>\n    <ul>\n      <li>权限设置模块中无需登录的模块不显示在模块列表中。<\/li>\n      <li>增加每个用户都具有的default角色。<\/li>\n      <li>允许一个用户帐户多终端同时登录。<\/li>\n      <li>增加引用公共模块示例。<\/li>\n    <\/ul>\n  <\/ul>\n  <hr class=\"wb_hr\">\n  <h3>新版本提供的新功能<\/h3>\n  <ul>\n    <li>全新的集成开发环境：<\/li>\n    <ul>\n      <li>在线开发xwl、js、java、sql、css、html和xml等；<\/li>\n      <li>代码自动完成，实时校验，语法高亮，代码导航，变量识别和自动匹配等；<\/li>\n      <li>可视化设计器和生成器提供快速的模块、界面、属性和事件的自动生成功能；<\/li>\n      <li>增强的调试功能无论服务器端对象和客户端对象均可直接以对象的形式输出到浏览器控制台；<\/li>\n      <li>真正的所见即所得设计器，使设计期间和运行期间展现完全一致；<\/li>\n      <li>全文搜索功能，可方便查找内容、文件、关键字和URL捷径等；<\/li>\n      <li>数据库连接监控器和线程监控器可实时监控程序对系统资源的使用；<\/li>\n      <li>上下文自动感知的用户界面：比如同一个删除按钮和快捷键能针对不同的上下文调用不同的删除功能，以方便开发人员操作；<\/li>\n      <li>多选择操作支持，可以多选文件、对象和控件等，多选之后可以同步删除、修改或拖动等；<\/li>\n      <li>团队开发功能增强，模块编辑权限设置；不同开发人员或不同会话编辑同一个文件时系统会提示；<\/li>\n      <li>调试时表单的自动填充功能；<\/li>\n      <li>导航功能可快速定位和跳转，可前进或后退上一次的页面和编辑器编辑点；<\/li>\n      <li>代码模板和文档注释模板功能；<\/li>\n      <li>异常自动处理：后台或前台的异常均可自动处理，如运行js错误系统会自动提示；<\/li>\n      <li>通过源代码自动生成在线帮助文档；<\/li>\n      <li>自动压缩调试的js和css文件；<\/li>\n      <li>文件同步编辑功能，如使用Eclipse调试时可自动同步临时目录文件内容。<\/li>\n    <\/ul>\n    <li>无论是服务器端还是客户端，新版本的WebBuilder 7带来更高效的性能，以处理日益庞大和复杂的企业业务。<\/li>\n    <li>客户端无iframe加载技术，使界面运行非常流畅。<\/li>\n    <li>组件、类库和模块的高度可重用机制，轻松应对复杂业务。<\/li>\n    <li>模块可通过独立、共享、嵌套、引用和控件等多种方式调用，既可以静态加载也可以动态加载。<\/li>\n    <li>快速、高效和丰富功能的移动App开发能力，能开发出媲美手机和PAD等移动设备原生界面效果的流畅和高用户体验应用，并可方便在各浏览器内核（如微信）中展现。<\/li>\n    <li>ServerScript支持Rhino和Nashorn，并提供强大功能的服务器端编程js框架；提供处理当前request和response的app对象，如app.send(object)，\n      app.info(object)，app.log(object)，app.run(sql)，app.get()，使服务器端编码简洁和高效；方便的调试功能可把对象直接输出到浏览器控制台，\n      如app.log({foo: 'bar'});可把该服务器端对象以对象的形式输出至当前用户的浏览器控制台。<\/li>\n    <li>用户界面自动调整和适应功能。比如经典和海王星主题存在标题栏、表格列、按钮和字体等的差异，\n      系统能自动处理这些差异，使界面表现一致。<\/li>\n    <li>模块使用文件系统存储方便版本管理及自动同步。如拖动、重命名或修改目录/文件时，系统会自动同步所有对该目录/文件的引用路径。<\/li>\n    <li>前端和后台第三方组件更新至最稳定版本，比如前端ExtJS使用经过修正的4.2.3版本，后台计划任务使用1.7.3版本。<\/li>\n    <li>强大的代码重构功能，更改变量名称，拖动模块文件路径等均能自动更新相应代码。<\/li>\n    <li>通过数据字典定义即可轻松完成数据库CRUD应用功能的开发。<\/li>\n    <li>控件管理器采用宏的配置方案，可简单和快速添加新的控件。<\/li>\n    <li>面向移动设备App的开发增强，模块的动态加载机制支持构建复杂的移动App。<\/li>\n    <li>Bootstrap支持，提供了从普通页面到轻页面再到富客户端应用的全套解决方案。<\/li>\n    <li>全新的管理工具：权限管理器，映射编辑器，数据库浏览器和任务管理器等。<\/li>\n    <li>数据的导出和导入：支持表格等无限大数据的导出和导入，能把表格的格式直接映射到Excel。支持的格式包括文本，HTML，XLS/XLSX等。<\/li>\n    <li>改进的权限控制系统和管理工具，通过管理工具能快速查找指定用户或角色可访问的，仅可访问的和不可访问的功能和模块等。<\/li>\n    <li>无Bug和无漏洞的设计原则，保证系统的稳定和安全。<\/li>\n    <li>多国语言的开发支持，同时把集成开发环境和管理工具设计成全中文界面。<\/li>\n    <li>用户数据Map绑定到Session功能，可快速访问当前用户相关的静态和动态数据。<\/li>\n    <li>URL路径自定义功能，可为模块指定任意的URL路径。<\/li>\n    <li>提供大量全新的彩色图标及FontAwesome图标。<\/li>\n    <li>支持经典、灰色和海王星等主题界面以及编辑器的多种主题。<\/li>\n  <\/ul>\n  <hr class=\"wb_hr\">\n  <h3>什么是模块文件xwl<\/h3>\n  <p>在WebBuilder中，开发的应用保存在一种以JSON格式来组织结构的文件，称为可扩展的Web语言文件（extensible web language），简称xwl。xwl的原理类似于jsp，通过Java后台Servlet接口执行xwl后，如果产生客户端脚本，就把这些脚本输出到客户端。<\/p>\n  <p>模块文件由控件构成，根节点为模块控件，用于描述整个模块和输出至客户端时整个页面的行为。模块内所有控件按顺序遍历和执行，所有控件在后台遍历执行完后，如果控件产生客户端脚本，最后把这些客户端脚本整合后输出到客户端。如果在后台控件或代码中有response.flushBuffer()的行为，这些控件产生的脚本将不会输出到客户端。<\/p>\n  <p>模块文件既可以是纯后台模块或前端页面，或是混合后台和前台功能的模块，模块的构成取决于用户使用的控件。在前端调用和执行一个模块的URL地址为m?xwl=relpath/file，如[http://localhost:8080/]m?xwl=dev/ide。通过此URL地址外，我们也可以为每个模块单独指定一个唯一的url捷径，如ide的捷径为[http://localhost:8080/]ide。<\/p>\n  <hr class=\"wb_hr\">\n  <h3>WebBuilder目录结构<\/h3>\n  <ul>\n    <li>META-INF：通常用于配置JNDI。WebBuilder软件包中默认缺省此目录，因为不同应用服务器配置JNDI的方法不一样。开发人员需要根据所使用的应用服务器来配置JNDI。<\/li>\n    <li>wb：WebBuilder资源目录，包括js，css，html，图片，模块，配置文件和其他相关文件等。<\/li>\n    <ul>\n      <li>css：样式表文件，样式表文件建议放在此目录。<\/li>\n      <li>images：图片文件。<\/li>\n      <li>libs：前端第三方库文件，包括extjs,bootstrap,touch等。<\/li>\n      <li>modules：模块文件根目录，所有模块文件存放于此。此目录受系统保护，无法从外部访问。<\/li>\n      <li>script：js脚本文件，js脚本文件建议放在此目录。某些系统的自动化功能只有放在此目录下的js文件才具有。<\/li>\n      <li>system：系统文件，含配置文件、变量文件、数据库文件等。此目录受系统保护，无法从外部访问。需要保护的文件可放在此目录下。<\/li>\n    <\/ul>\n    <li>WEB-INF：通常用于存放Java的库文件jar和类文件class。WebBuilder及其第三方jar包放在lib子目录下。<\/li>\n  <\/ul>\n<\/div>","border":"false","itemId":"panel1"},"children":[],"expanded":false,"type":"panel"}],"expanded":true,"type":"viewport"}],"expanded":true,"type":"module"}],"pageLink":"","iconCls":""}