├── js-demo ├── js │ ├── hello_service.js │ └── user_service.js ├── sql │ ├── tables.sql │ └── services.sql ├── src │ └── main │ │ ├── resources │ │ ├── lealone.yaml │ │ └── log4j2.xml │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── js │ │ ├── User.java │ │ └── JsDemo.java ├── web │ └── fullStack.html └── build.bat ├── polyglot-demo ├── js │ └── hello_service.js ├── sql │ └── services.sql ├── src │ └── main │ │ ├── java │ │ └── com │ │ │ └── lealone │ │ │ └── examples │ │ │ └── polyglot │ │ │ ├── TimeService.java │ │ │ └── PolyglotDemo.java │ │ └── resources │ │ ├── lealone.yaml │ │ └── log4j2.xml └── build.bat ├── python-demo ├── python │ ├── hello_service.py │ └── user_service.py ├── sql │ ├── tables.sql │ └── services.sql ├── src │ └── main │ │ ├── resources │ │ ├── lealone.yaml │ │ └── log4j2.xml │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── python │ │ ├── User.java │ │ └── PythonDemo.java ├── web │ └── fullStack.html └── build.bat ├── .gitignore ├── petstore ├── petstore-web │ ├── web │ │ ├── home │ │ │ ├── img │ │ │ │ ├── cart.png │ │ │ │ ├── tab_mid.png │ │ │ │ ├── bg_topline.png │ │ │ │ ├── btn_login.png │ │ │ │ ├── logo_webx.png │ │ │ │ ├── tab_left.png │ │ │ │ ├── tab_right.png │ │ │ │ ├── logo_alibaba.gif │ │ │ │ ├── dot_transparent.png │ │ │ │ ├── logo_webx_small.png │ │ │ │ ├── petstore_title.png │ │ │ │ ├── logo_petstore_big.png │ │ │ │ ├── tab_selected_left.png │ │ │ │ ├── tab_selected_mid.png │ │ │ │ ├── logo_petstore_small.png │ │ │ │ └── tab_selected_right.png │ │ │ ├── js │ │ │ │ ├── view-cart.js │ │ │ │ └── item-list.js │ │ │ ├── template │ │ │ │ ├── layout │ │ │ │ │ ├── top-no-logo.html │ │ │ │ │ ├── top.html │ │ │ │ │ ├── tabs.html │ │ │ │ │ ├── footer.html │ │ │ │ │ └── nav.html │ │ │ │ └── shopping │ │ │ │ │ ├── category-list.html │ │ │ │ │ ├── item-list.html │ │ │ │ │ └── view-cart.html │ │ │ └── css │ │ │ │ └── petstore-homepage.css │ │ ├── store │ │ │ ├── img │ │ │ │ ├── cat1.jpg │ │ │ │ ├── cat3.jpg │ │ │ │ ├── dog1.jpg │ │ │ │ ├── dog2.jpg │ │ │ │ ├── dog4.jpg │ │ │ │ ├── dog5.jpg │ │ │ │ ├── dog6.jpg │ │ │ │ ├── bird1.jpg │ │ │ │ ├── bird4.jpg │ │ │ │ ├── fish1.jpg │ │ │ │ ├── fish2.jpg │ │ │ │ ├── fish3.jpg │ │ │ │ ├── fish4.jpg │ │ │ │ ├── cat_bird.jpg │ │ │ │ ├── cat_cat.jpg │ │ │ │ ├── cat_dog.jpg │ │ │ │ ├── cat_fish.jpg │ │ │ │ ├── lizard2.jpg │ │ │ │ ├── lizard3.jpg │ │ │ │ └── cat_reptile.jpg │ │ │ ├── css │ │ │ │ └── petstore-store.css │ │ │ ├── template │ │ │ │ ├── category-list.html │ │ │ │ ├── item-list.html │ │ │ │ └── add-product.html │ │ │ ├── js │ │ │ │ └── add-product.js │ │ │ └── index.html │ │ ├── user │ │ │ ├── css │ │ │ │ └── petstore-user.css │ │ │ ├── js │ │ │ │ └── hooks.js │ │ │ ├── template │ │ │ │ ├── register.html │ │ │ │ ├── login.html │ │ │ │ └── account.html │ │ │ └── index.html │ │ └── common │ │ │ ├── js │ │ │ ├── petstore.js │ │ │ └── plugins │ │ │ │ └── README.md │ │ │ └── css │ │ │ └── petstore-common.css │ └── pom.xml ├── petstore-dist │ ├── bin │ │ ├── runSqlScript.sh │ │ ├── sqlshell.sh │ │ ├── sqlshell.bat │ │ ├── runSqlScript.bat │ │ ├── lealone.sh │ │ └── lealone.bat │ ├── conf │ │ ├── log4j2.xml │ │ └── lealone.yaml │ └── assembly.xml ├── build.sh ├── README.md ├── petstore-test │ ├── src │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── lealone │ │ │ │ └── examples │ │ │ │ └── petstore │ │ │ │ └── test │ │ │ │ ├── PetStoreSqlScriptTest.java │ │ │ │ ├── PetStoreTemplateCompilerTest.java │ │ │ │ ├── TemplateEngineTest.java │ │ │ │ └── PetStoreTest.java │ │ │ └── resources │ │ │ ├── lealone.yaml │ │ │ └── log4j2.xml │ └── pom.xml ├── petstore-service │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── services.sql │ │ │ └── java │ │ │ └── com │ │ │ └── lealone │ │ │ └── examples │ │ │ └── petstore │ │ │ └── service │ │ │ ├── UserService.java │ │ │ └── ViewCartService.java │ └── pom.xml ├── petstore-dal │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── petstore │ │ └── dal │ │ └── model │ │ ├── Sequence.java │ │ ├── User.java │ │ ├── Inventory.java │ │ ├── BannerData.java │ │ ├── OrderStatus.java │ │ ├── Profile.java │ │ ├── OrderItem.java │ │ ├── Supplier.java │ │ ├── Category.java │ │ └── Account.java ├── petstore-main │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── petstore │ │ └── main │ │ └── PetStore.java └── build.bat ├── rpc-demo ├── sql │ └── services.sql ├── web │ └── hello.html ├── src │ └── main │ │ ├── java │ │ └── com │ │ │ └── lealone │ │ │ └── examples │ │ │ └── rpc │ │ │ ├── HelloService.java │ │ │ └── RpcDemo.java │ │ └── resources │ │ ├── lealone.yaml │ │ └── log4j2.xml ├── build.bat └── pom.xml ├── petstore.iml ├── fullstack-demo ├── sql │ ├── tables.sql │ └── services.sql ├── src │ └── main │ │ ├── resources │ │ ├── lealone.yaml │ │ └── log4j2.xml │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── fullstack │ │ ├── FullStackDemo.java │ │ ├── generated │ │ ├── model │ │ │ └── User.java │ │ └── service │ │ │ ├── UserService.java │ │ │ └── executor │ │ │ └── UserServiceExecutor.java │ │ └── UserServiceImpl.java ├── web │ └── fullStack.html ├── build.bat └── pom.xml ├── orm-demo ├── src │ └── main │ │ ├── resources │ │ ├── tables.sql │ │ └── log4j2.xml │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── orm │ │ └── generated │ │ ├── Customer.java │ │ └── Order.java ├── build.bat └── pom.xml ├── embed-db-demo ├── pom.xml ├── src │ └── main │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── embed │ │ └── EmbedDbDemo.java └── build.bat ├── spring-demo ├── src │ └── main │ │ └── java │ │ └── com │ │ └── lealone │ │ └── examples │ │ └── spring │ │ ├── SpringDemo.java │ │ ├── ServletInitializer.java │ │ └── HelloController.java ├── pom.xml ├── pom-war.xml └── build.bat ├── README.md └── storage-engine-demo ├── build.bat └── src └── main └── java └── com └── lealone └── examples └── storage └── StorageEngineDemo.java /js-demo/js/hello_service.js: -------------------------------------------------------------------------------- 1 | function hello(name) { 2 | return "JS hello " + name; 3 | } 4 | -------------------------------------------------------------------------------- /polyglot-demo/js/hello_service.js: -------------------------------------------------------------------------------- 1 | function hello(name) { 2 | return "JS hello " + name; 3 | } 4 | -------------------------------------------------------------------------------- /python-demo/python/hello_service.py: -------------------------------------------------------------------------------- 1 | def hello(name): 2 | return "Python hello " + name 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | 3 | .settings 4 | .classpath 5 | .project 6 | target 7 | .idea 8 | .dbeaver 9 | -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/cart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/cart.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat1.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat3.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/dog1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/dog1.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/dog2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/dog2.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/dog4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/dog4.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/dog5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/dog5.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/dog6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/dog6.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_mid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_mid.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/bird1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/bird1.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/bird4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/bird4.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/fish1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/fish1.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/fish2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/fish2.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/fish3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/fish3.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/fish4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/fish4.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/bg_topline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/bg_topline.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/btn_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/btn_login.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/logo_webx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/logo_webx.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_left.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_right.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat_bird.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat_bird.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat_cat.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat_cat.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat_dog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat_dog.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat_fish.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat_fish.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/lizard2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/lizard2.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/lizard3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/lizard3.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/logo_alibaba.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/logo_alibaba.gif -------------------------------------------------------------------------------- /petstore/petstore-web/web/store/img/cat_reptile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/store/img/cat_reptile.jpg -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/dot_transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/dot_transparent.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/logo_webx_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/logo_webx_small.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/petstore_title.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/petstore_title.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/logo_petstore_big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/logo_petstore_big.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_selected_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_selected_left.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_selected_mid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_selected_mid.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/logo_petstore_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/logo_petstore_small.png -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/img/tab_selected_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lealone/Lealone-Examples/HEAD/petstore/petstore-web/web/home/img/tab_selected_right.png -------------------------------------------------------------------------------- /petstore/petstore-dist/bin/runSqlScript.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | java -cp ../lib/lealone-petstore-1.0.0.jar com.lealone.examples.petstore.main.PetStoreSqlScript -tableDir ../sql -serviceDir ../sql -srcDir ../src 3 | 4 | -------------------------------------------------------------------------------- /petstore/petstore-web/web/user/css/petstore-user.css: -------------------------------------------------------------------------------- 1 | .subtitle { 2 | FONT-WEIGHT: bold; 3 | FONT-SIZE: large; 4 | COLOR: #000000; 5 | FONT-FAMILY: "Times New Roman", Times, serif; 6 | background-color: #CCCCCC; 7 | padding: 5px; 8 | } 9 | -------------------------------------------------------------------------------- /js-demo/sql/tables.sql: -------------------------------------------------------------------------------- 1 | 2 | drop table if exists user; 3 | 4 | create table if not exists user ( 5 | id long auto_increment primary key, 6 | name varchar, 7 | age int 8 | ) package 'com.lealone.examples.js' generate code './src/main/java'; 9 | 10 | -------------------------------------------------------------------------------- /python-demo/sql/tables.sql: -------------------------------------------------------------------------------- 1 | 2 | drop table if exists user; 3 | 4 | create table if not exists user ( 5 | id long auto_increment primary key, 6 | name varchar, 7 | age int 8 | ) package 'com.lealone.examples.python' generate code './src/main/java'; 9 | 10 | -------------------------------------------------------------------------------- /petstore/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | mvn package -Dmaven.test.skip=true 3 | java -cp petstore-dist/target/lealone-petstore-1.0.0.jar com.lealone.plugins.service.template.TemplateCompiler -webRoot petstore-web/web -targetDir petstore-dist/target 4 | mvn assembly:assembly -Dmaven.test.skip=true 5 | -------------------------------------------------------------------------------- /rpc-demo/sql/services.sql: -------------------------------------------------------------------------------- 1 | -- 删除服务 2 | drop service if exists hello_service; 3 | 4 | -- 创建服务: hello_service 5 | create service if not exists hello_service ( 6 | say_hello(name varchar) varchar -- HelloService 方法定义 7 | ) 8 | implement by 'com.lealone.examples.rpc.HelloService' -- HelloService 默认实现类 9 | -------------------------------------------------------------------------------- /petstore.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/js/view-cart.js: -------------------------------------------------------------------------------- 1 | const viewCart = { 2 | data() { 3 | return { 4 | cartId: localStorage.currentUser ? localStorage.currentUser : "" 5 | } 6 | } 7 | } 8 | const viewCartHooks = { 9 | removeItem: { after() { this.getItems() } } 10 | } 11 | 12 | ViewCartService.hooks = viewCartHooks; 13 | -------------------------------------------------------------------------------- /fullstack-demo/sql/tables.sql: -------------------------------------------------------------------------------- 1 | -- 删除表 2 | drop table if exists user; 3 | 4 | -- 创建表: user,会生成一个名为User的模型类 5 | create table if not exists user ( 6 | id long auto_increment primary key, 7 | name varchar, 8 | age int 9 | ) 10 | package 'com.lealone.examples.fullstack.generated.model' -- User类所在的包名 11 | generate code './src/main/java' -- User类的源文件所在的根目录 12 | -------------------------------------------------------------------------------- /js-demo/sql/services.sql: -------------------------------------------------------------------------------- 1 | 2 | create service if not exists hello_service ( 3 | hello(name varchar) varchar 4 | ) 5 | language 'js' implement by './js/hello_service.js'; 6 | 7 | 8 | create service if not exists user_service ( 9 | add_user(name varchar, age int) long, 10 | find_by_name(name varchar) user 11 | ) 12 | language 'js' implement by './js/user_service.js'; 13 | 14 | -------------------------------------------------------------------------------- /python-demo/sql/services.sql: -------------------------------------------------------------------------------- 1 | 2 | create service if not exists hello_service ( 3 | hello(name varchar) varchar 4 | ) 5 | language 'python' implement by './python/hello_service.py'; 6 | 7 | 8 | create service if not exists user_service ( 9 | add_user(name varchar, age int) long, 10 | find_by_name(name varchar) user 11 | ) 12 | language 'python' implement by './python/user_service.py'; 13 | 14 | -------------------------------------------------------------------------------- /polyglot-demo/sql/services.sql: -------------------------------------------------------------------------------- 1 | -- 删除服务 2 | drop service if exists hello_service; 3 | 4 | -- 创建 hello_service 服务,用 js 实现 5 | create service if not exists hello_service ( 6 | hello(name varchar) varchar 7 | ) 8 | language 'js' implement by './js/hello_service.js'; 9 | 10 | 11 | drop service if exists time_service; 12 | 13 | -- 创建 time_service 服务,默认用 java 语言实现 14 | create service if not exists time_service ( 15 | get_current_time() varchar 16 | ) 17 | implement by 'com.lealone.examples.polyglot.TimeService'; 18 | 19 | -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/js/item-list.js: -------------------------------------------------------------------------------- 1 | const itemlist = { 2 | data() { return { itemAdded: false } }, 3 | methods: { 4 | addCartItem(itemId) { 5 | if(!localStorage.currentUser) { //需要登录 6 | lealone.route('user', 'login'); 7 | return false; 8 | } 9 | var cart = lealone.get('view-cart'); 10 | cart.addItem(cart.cartId, itemId, data=>{ 11 | this.itemAdded = true; 12 | }); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/template/layout/top-no-logo.html: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /fullstack-demo/sql/services.sql: -------------------------------------------------------------------------------- 1 | -- 删除服务 2 | drop service if exists user_service; 3 | 4 | -- 创建服务: user_service,会生成一个对应的UserService接口 5 | create service if not exists user_service ( 6 | add_user(name varchar, age int) long, -- 定义UserService接口方法 add_user 7 | find_by_name(name varchar) user -- 定义UserService接口方法 find_by_name 8 | ) 9 | package 'com.lealone.examples.fullstack.generated.service' -- UserService接口所在的包名 10 | implement by 'com.lealone.examples.fullstack.UserServiceImpl' -- UserService接口的默认实现类 11 | generate code './src/main/java' -- UserService接口源文件的根目录 12 | -------------------------------------------------------------------------------- /python-demo/python/user_service.py: -------------------------------------------------------------------------------- 1 | 2 | import java 3 | 4 | # 使用 java 的类 5 | User = java.type('com.lealone.examples.python.User') 6 | 7 | def addUser(name, age): 8 | # 创建 User 对象 9 | user = User() 10 | 11 | # 如果 name = 'zhh', age = 18 12 | # 对应的sql是: insert into user(name, age) values('zhh', 18); 13 | return user.name.set(name).age.set(age).insert() # 链式调用,insert()返回新增记录的rowId 14 | 15 | def findByName(name): 16 | # 如果 name = 'zhh' 17 | # 对应的sql是: select * from user where name = 'zhh' limit 1 18 | return User.dao.where().name.eq(name).findOne() 19 | -------------------------------------------------------------------------------- /js-demo/js/user_service.js: -------------------------------------------------------------------------------- 1 | 2 | // 使用 java 的类 3 | var User = Java.type('com.lealone.examples.js.User'); 4 | 5 | function addUser(name, age) { 6 | // 创建 User 对象 7 | var user = new (User); 8 | 9 | // 如果 name = 'zhh', age = 18 10 | // 对应的sql是: insert into user(name, age) values('zhh', 18); 11 | return user.name.set(name).age.set(age).insert(); // 链式调用,insert()返回新增记录的rowId 12 | } 13 | 14 | function findByName(name) { 15 | // 如果 name = 'zhh' 16 | // 对应的sql是: select * from user where name = 'zhh' limit 1 17 | return User.dao.where().name.eq(name).findOne(); 18 | } 19 | -------------------------------------------------------------------------------- /petstore/petstore-web/web/home/template/layout/top.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 | 7 |