ureport2 數據源配置方式 java
ureport2 的數據源配置方式 spring
注意:(在頁面用數據源配置連接數據庫注意,不要刷新瀏覽器,刷新以後連接會清空)數據庫
pom.xml,文件配置數據庫連接(JDBC驅動包,數據庫鏈接池的jar包)apache
測試成功,點擊保存瀏覽器
數據源卡項會多一個新增長的demodom
點擊demo右鍵 添加數據集ide
編輯SQL語句,預覽結果,點擊肯定測試
好了,數據源配置就是這樣了ui
注意:(在頁面用SpringBean數據源配置連接數據庫注意,不要刷新瀏覽器,刷新以後連接會清空)this
package com.bstek.ureport.test.demo;
import org.apache.commons.lang.RandomStringUtils; import org.apache.commons.lang3.RandomUtils; import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;
/** * 聲明一個類,至關於一個配置文件 bean → 註解@Component * 把普通pojo實例化到spring容器中,至關於配置文件中的<bean id="" class=""/> */ @Component public class TestBean { /** * 方法必須包含三個參數:String,String,Map * * @return 集合類型 ,包含字段:id,name,salary */ public List<Map<String, Object>> loadReportData(String dsName, String datasetName, Map<String, Object> parameters) { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); for (int i = 0; i < 1000; i++) { // 模擬數據 Map<String, Object> m = new HashMap<String, Object>(); m.put("id", i); m.put("name", RandomStringUtils.random(10, true, false)); m.put("salary", RandomUtils.nextInt() + i); list.add(m); } return list; }
/** * @return 對象類型 ,類型:com.bstek.ureport.test.demo.User */ public List<User> buildReport(String dsName, String datasetName, Map<String, Object> parameters) { List<User> list = new ArrayList<User>(); for (int i = 0; i < 1000; i++) { User m = new User(); m.setId(i); m.setName(RandomStringUtils.random(10, true, false)); m.setSalary(RandomUtils.nextInt() + i); list.add(m); } return list; } } |
package com.bstek.ureport.test.demo;
import lombok.Data;
@Data public class User { private int id; private String name; private int salary;
} |
@Component public class TestBuildinDatasource implements BuildinDatasource {
@Autowired private DataSource dataSource;
/** * @return 返回數據源名稱 */ @Override public String name() { return "內置數據源DEMO"; }
/** * @return 返回當前採用數據源的一個鏈接 */ @Override public Connection getConnection() { try { return dataSource.getConnection(); } catch (SQLException e) { throw new RuntimeException(e); } }
public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; }
} |