3.项目要是没有编译过的话,配置类是不会自动生成的,这样代码就会报错说类找不到,然后很多新手就懵逼了。...APT技术实现页面配置类的自动生成 其实当初实现页面配置类的自动生成的方案,也是我研读了ARouter源码之后,受到了APT技术的启发后完成的。...3.调用getPagesByClass方法,反射获取到配置类的所有页面信息,然后加入到页面集合中,最终返回所有module配置页面的信息。...所以如果代码做了混淆了之后,该方案就会失效了,所以我们还需要在混淆配置清单中增加如下的配置来避免混淆: -keep class com.xuexiang.xpage.config.** { *; }...除此之外,使用者可能也想自定义屏幕的触摸事件,因此我对此做了重新设计,将触摸事件的处理下放至每个Fragment之中,由Activity调用指定的方法进行处理。
前言 Java框架实在是太多了,因为是初学乍练,所以,只好以百度为标准选择框架了。...页面框架 implementation 'com.github.xuexiangjys.XPage:xpage-lib:3.1.1' annotationProcessor 'com.github.xuexiangjys.XPage...编写完Activity后,在manifest里增加权限,并且手动加Activity,因为要设置它的launchMode和其他属性。 manifest如下: Java基础的可以参考一下我的Java短篇文章 Java的委托 Java中的Class类 通过Gson解析Json数据 OKhttp3的使用教程 xUtils3的使用教程 Java泛型详解 Android...代码已经传到Github上了,欢迎大家下载。
代码放哪? 因为xwiki允许你把代码放在wiki页面或者放在java,你可能会问,应该把代码放哪。下面是一些一般原则: 不要把"业务逻辑"代码放在wiki页面,应该放在Java。...因为放Java可以通过IDE方便地调试代码,并可以编写单元测试用来自动测试。一般来说它更容易维护。 一般来说,尽量少在wiki页面写一些脚本,因为这会让他们难以维护。...只有"表现层逻辑"脚本适合放在wiki页面(而不是在Java代码!),即脚本负责呈现通过Java/REST API检索到的数据。...一个简单的代码用于后台服务处理错误: #handleRequest($success) #if ($success) #if ($request.action == 'get' || $request.xpage...#handleErrorHere($request.xredirect) #end #end 这个想法是,你要传递错误信息给UI界面,但你没有一个明确的方式来做这件事,就像你对AJAX调用(响应代码和响应文本
之前也写过React和Vue,发现它们都有非常方便的UI库,而且使用起来也非常方便,直接在示例代码的基础上修修改改就能大致上实现自己想要的效果,极大地提高了开发的效率。...项目架构 项目页面主要使用XPage页面框架自动搭建,结构非常清晰。项目主要分为"组件"、"工具"和"拓展"三个部分。...com.xuexiang.xuidemo.fragment.expands"包下,点击查看 项目结构如下图: 项目结构 Demo主页面如下图: Demo主页面 Demo体验 扫码体验 视频教程 如何在项目中使用...colorPrimaryDark @color/colorAccent 当然也可以在Activity刚开始时调用如下代码动态设置主题...下) //设置默认字体为华文行楷,这里写你的字体库 XUI.getInstance().initFontStyle("fonts/hwxk.ttf"); (2)在项目的基础Activity中加入如下代码注入字体
突然有一天我发现Github上有个开源项目CorePage写得非常好,完美地解决了我对一个Activity容器的问题,于是我决定仔细研究其代码,并在其基础上设计出了XPage的最初版本。...XAOP是我刚接触到AOP(面向切片编程)思想后,灵光乍现编写的应用库,应该说是我使用得最多的库了,因为有了它,编码真的很方便!...每次请求可能都需要构建一个请求实体,并且不同的请求需要调用不同的方法,传入不同的参数,往往一个请求需要写很多重复的代码。 耦合度高。...如果需要切换一种请求方式的话,需要修改所有工具类调用相关的代码,非常麻烦。 请求的行为不好控制。例如请求策略的控制、请求线程的控制、缓存策略的控制、请求响应以及异常处理的控制等。 可拓展性差。...综合使用了原型模式、构建者模式、代理模式、策略模式、模板模式、装饰模式、外观模式、中介者模式、责任链模式和观察者模式,并且严格遵循Java设计模式的七大设计原则进行了严格地设计。
-15年前: XML/XSLT/JS/JQuery/J2EE等: 因为是做产品研发,当时公司是物理手段解决的资料COPY(研发电脑直接是用胶水堵住USB口),所以完全没有办法学习公司内部使用的,类似Xpage...可以看到已经完全过时了,源代码失效 ?...基于VB的SAP录屏技术(可以被BDC,RPA等取代) 最常见应用是主数据顾问应用在excel中,可以实现固定的收集模版收集好数据后,一键进系统 ?...同样的原因,可以用OLEDB实现数据库的链接,而不是只有Native SQL与Open SQL 这2个选择; 应用场景如:2015年左右,SAP的ODBC只支持MSSQL的32位版本,无法支持X64...多说一点,加上其他的类似ocx调用等,这些可以极大的扩展本身SAP限制不能实现,但是对Windows操作系统又是很好支持的技术。
-15年前: XML/XSLT/JS/JQuery/J2EE等: 因为是做产品研发,当时公司是物理手段解决的资料COPY(研发电脑直接是用胶水堵住USB口),所以完全没有办法学习公司内部使用的,类似Xpage...等前端技术取代): SAP的屏幕脚本技术:可以通过脚本方式修改界面展示 基于VB的SAP录屏技术(可以被BDC,RPA等取代) 最常见应用是主数据顾问应用在excel中,可以实现固定的收集模版收集好数据后,...一键进系统 多说一点,如果是SAP GUI Script的话,结合如下图的录制工具, 就可以支持录制脚本,且支持vb、python、java、powerShell等多种脚本语言的导出 一些基于...实现数据库的链接,而不是只有Native SQL与Open SQL 这2个选择; 应用场景如:2015年左右,SAP的ODBC只支持MSSQL的32位版本,无法支持X64,可以用这套OLEDB方案解决...多说一点,加上其他的类似ocx调用等,这些可以极大的扩展本身SAP限制不能实现,但是对Windows操作系统又是很好支持的技术。
破解激活,IntelliJ IDEA 注册码,2020.2 IDEA 激活码 1. jsp的生命周期方法是什么?...核心标签 sql标签 xml标签 国际化标签 功能标签 6.如何在JSP中禁用会话? 7.如何在JSP中删除Cookie?...以下代码说明了如何在JSP中删除Cookie: Cookie mycook = new Cookie("name1","value1"); response.addCookie(mycook1); Cookie...Java服务器页面可以包含Java程序的片段,这些片段执行和实例化Java类。但是,它们出现在HTML模板文件中。它提供了开发Web应用程序的框架。...用于此目的的JSP EL代码将类似于$ {pageContext.request.method}。
Debug窗口:访问请求到达第一个断点后,会自动激活Debug窗口。如果没有自动激活,可以去设置里设置,如图1.2。...[图1.1] 在设置里勾选Show debug window on breakpoint,则请求进入到断点后自动激活Debug窗口 ?...一般配合热部署插件会更好用,如JRebel,这样就不用每次更改代码后还要去重新启动服务。如何激活JRebel,在最后章节附上。...这个表达式不仅可以是一般变量或参数,也可以是方法,当你的一行代码中调用了几个方法时,就可以通过这种方式查看查看某个方法的返回值。 ?...[图9.2] 十、附:JRebel激活 目前本人一直使用JRebel做热部署工具,效果还算理想,修改Java代码或者xml等配置文件都能热更新。
3.Debug窗口: 访问请求到达第一个断点后,会自动激活Debug窗口。如果没有自动激活,可以去设置里设置,如图1.2。...8.Watches: 查看变量,可以将Variables区中的变量拖到Watches中查看 在设置里勾选Show debug window on breakpoint,则请求进入到断点后自动激活Debug...一般配合热部署插件会更好用,如JRebel,这样就不用每次更改代码后还要去重新启动服务。如何激活JRebel,在最后章节附上。...这个表达式不仅可以是一般变量或参数,也可以是方法,当你的一行代码中调用了几个方法时,就可以通过这种方式查看查看某个方法的返回值。...附:JRebel激活 目前本人一直使用JRebel做热部署工具,效果还算理想,修改Java代码或者xml等配置文件都能热更新。偶尔服务开久了,或更改的文件较多时,热更新没有生效,需要重新启动服务。
今天我们就来聊聊SpringBoot配置文件未生效的常见原因和解决方案,以及如何在实际项目中避免这些问题。...正确的配置文件位置展开代码语言:TXTAI代码解释project-root/├──src/│└──main/│├──java/││└──com/││└──example/││└──Application.java...代码解释spring:profiles:active:dev这样配置后,SpringBoot会加载application.yml和application-dev.yml。...:YAMLAI代码解释app:name:MyApplicationversion:1.0.0实际应用场景让我们看几个实际应用场景,了解如何在实际项目中应用这些解决方案:场景一:多环境配置管理在实际项目中...=dev生产环境:展开代码语言:BashAI代码解释java-jarapp.jar--spring.profiles.active=prod场景二:配置外部化在实际项目中,我们通常不希望把敏感信息(如密码
Debug窗口:访问请求到达第一个断点后,会自动激活Debug窗口。如果没有自动激活,可以去设置里设置,如图1.2。...Watches:查看变量,可以将Variables区中的变量拖到Watches中查看 [图1.1] 在设置里勾选Show debug window on breakpoint,则请求进入到断点后自动激活...Update 'tech' application (Ctrl + F5):更新程序,一般在你的代码有改动后可执行这个功能。而这个功能对应的操作则是在服务配置里,如图2.3。...一般配合热部署插件会更好用,如JRebel,这样就不用每次更改代码后还要去重新启动服务。如何激活JRebel,在最后章节附上。...这个表达式不仅可以是一般变量或参数,也可以是方法,当你的一行代码中调用了几个方法时,就可以通过这种方式查看查看某个方法的返回值。
在 XML 文件定义之后我们只需要激活指定的 Profile 名称就可以加载对应的 Bean 对象了,在 Spring 程序中激活的方式主要两种: Java API 方式,获取当前 Spring 容器的环境...为了看到指定 Profile 激活后的效果,我们可以通过下方的一个例子实践下,通过激活不同 Profile 启动程序,来请求 /enviroment 接口来获取当前的环境配置变量。 ?...这里我们介绍如何在配置文件中激活 Profile 的方式:在 application.yml 顶部添加如下配置,表明当前所激活的 Profile 为 prod,当然也可以前文介绍的启动参数方式激活: ?...总结 在Spring Boot 程序中,我们通常定义不同 Profiles 的配置文件,如 application-{profile}.properties,在默认配置文件 application.properties...示例代码 本文示例代码可以通过下面仓库地址获取: springboot-actions-profiles:https://github.com/wrcj12138aaa/springboot-actions-profiles
通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。 所以学习下如何在Intellij IDEA中使用好Debug。...3、Debug窗口:访问请求到达第一个断点后,会自动激活Debug窗口。如果没有自动激活,可以去设置里设置,如图1.2。...8、Watches:查看变量,可以将Variables区中的变量拖到Watches中查看 [图1.1] 在设置里勾选Show debug window on breakpoint,则请求进入到断点后自动激活...一般配合热部署插件会更好用,如JRebel,这样就不用每次更改代码后还要去重新启动服务。如何激活JRebel,在最后章节附上。...这个表达式不仅可以是一般变量或参数,也可以是方法,当你的一行代码中调用了几个方法时,就可以通过这种方式查看查看某个方法的返回值。
进入Ubuntu打开终端,输入java 输入命令:sudo apt install openjdk-8-jre-headless,回车 等待安装好后,输入javac,如图: 输入命令:sudo apt...install openjdk-8-jdk-headless,回车 等待安装好后,输入:java,javac检验是否安装成功。...安装好JDK后,就可以使用进行pycharm的安装与激活成功教程。...下载后解压提取到本地,在激活之前需要修改host文件,在终端输入sudo vi /etc/hosts,打开该文件,点击“i”进入编辑模式后,添加一行代码:0.0.0.0 account.jetbrains.com.../pycharm.sh或者/usr/local/bin/charm来打开pycharm,在进行一系列设置后,进入到激活界面,如下图: 点击Activation code,打开http://idea.lanyus.com
在现代软件开发中,应用通常需要在多个环境(如开发、测试、生产)中运行,每个环境可能需要不同的配置设置。...如何在Spring Boot中使用Profiles 定义Profiles 在 Spring Boot 应用中,可以通过在 application.properties 或 application.yml...此外,还可以在配置文件名称中包含 Profile 名称,如 application-dev.yml,Spring Boot 会根据激活的 Profiles 自动加载对应的配置文件。...java -jar myapp.jar --spring.profiles.active=dev,test 在环境变量中设置:设置 SPRING_PROFILES_ACTIVE 环境变量。...@Configuration @Profile("dev") public class DevConfig { // 配置仅在开发环境中生效的Bean } 最佳实践 避免硬编码:尽量不要在代码中硬编码环境特定的值
3.功能键(Function Key):为按钮分配功能键代码,包括系统标题按钮(如返回、退出、关闭等)及通过Application ToolBar所定义的客制化按钮。 ...下面介绍如何在程序中创建一个工具栏按钮,并为其分配Function Key。 1.选择Application ToolBar中一个文本框,并输入自定义名称,如下图: ? ...所有设置完成后,保存激活,GUI Status创建成功。下面,我们需要对刚才新增的GUI Status进行调用,应用于START-OF-SELECTION事件。...对于定义的按钮,我们可以通过系统变量SY-UCOMM来获取它的功能代码。GUI STATUS的调用必须在Report输出是才触发。如下小例: REPORT ZZWEI_MESSAGE....按钮确认后,在对象菜单中将显示所新增项,如下图: ? 3.保存并激活,在程序中通过语法SET TITLEBAR 调用该GUI Title,如下: ?