Myeclipse/eclipse
浏览器
电脑
mysql数据库
Matplot3d_4_dhj_f(v1.0).jar包
Matplot3d_4_dhj_f(v1.0).jar 下载地址是 https://gitee.com/tanling8334/Matplot3D-for-Java你可以先把页面上两个jar包和案例代码都下载下来,好好研究研究一下
1、从数据库里面查询数据,然后呈现在图形上面2、可以放大和缩小3、按住鼠标不断的调整图形的视角
加载类资源管理器package tanling.matplot4j.demo;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;public class TextFileHelper { /* * author:@命运的信徒 * date:2019/2/19 * arm:获取路径 */ 由于不能发表超过1500字的经验,代码在下方以图片的形式展示 }}
设置组件的字体、大小package tanling.matplot4j.demo;import java.util.Enumeration;import javax.swing.UIManager;import javax.swing.plaf.FontUIResource;import tanling.matplot_4j.comment.SysConstents;public class UIUtil { public static void initGlobalFont(){ //设置各个组件的字体 FontUIResource fontUIResource = new FontUIResource(SysConstents.DEFAULT_FONT); // for (Enumeration keys = UIManager.getDefaults().keys(); keys.hasMoreElements();) { Object key = keys.nextElement(); Object value= UIManager.get(key); if (value instanceof FontUIResource) { UIManager.put(key, fontUIResource); } } }}
数据库连接池的代码package cn.com.jdbc;import java.io.InputStream;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSourceFactory; /*** @ClassName: JdbcUtils_DBCP* @Description: 数据库连接工具类* @author: 命运的信徒* @date: 2018-10-13 **/ public class JdbcUtils_DBCP { /** * 在java中,编写数据库连接池需实现java.sql.DataSource接口,每一种数据库连接池都是DataSource接口的实现 * DBCP连接池就是java.sql.DataSource接口的一个具体实现 */ 由于不能发表超过1500字的经验,代码在下方以图片的形式展示 }}
右侧鼠标伸缩大小以及观察位置的面板package cn.com.test;import java.awt.BorderLayout;import java.awt.TextArea;import javax.swing.BorderFactory;import javax.swing.JPanel;import javax.swing.JTabbedPane;import tanling.matplot_4j.comment.SysConstents;import tanling.matplot_4j.d3d.facade.MatPlot3DMgr;import tanling.matplot_4j.style.ColorHelper;public abstract class AbsContentPanel extends JPanel { /** * */ 由于不能发表超过1500字的经验,代码在下方以图片的形式展示 }
查询数据库,把数据显示在图上package cn.com.test;import java.awt.geom.Point2D;import java.util.ArrayList;import java.util.List;import tanling.matplot4j.demo.TextFileHelper;import tanling.matplot_4j.d3d.facade.MatPlot3DMgr;public class Curves2DContentPanel extends AbsContentPanel { /** * */ 由于不能发表超过1500字的经验,代码在下方以图片的形式展示 }
具体查询数据库的java代码package cn.com.test;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.List;import cn.com.jdbc.JdbcUtils_DBCP;public class Displacement { static List
鼠标事件package cn.com.test;import java.awt.Color;import java.awt.Dimension;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Observable;import java.util.Observer;import javax.swing.BorderFactory;import javax.swing.ButtonGroup;import javax.swing.JCheckBox;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JRadioButton;import javax.swing.JTextField;import tanling.matplot_4j.comment.SysConstents;import tanling.matplot_4j.d3d.base.speg.Point3D;import tanling.matplot_4j.d3d.facade.MatPlot3DMgr;import tanling.matplot_4j.style.ColorHelper;public class OptionPanel extends JPanel implements Observer { /** * */ 由于不能发表超过1500字的经验,代码在下方以图片的形式展示 }
主窗口package cn.com.test;import java.awt.BorderLayout;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.SwingUtilities;public class Test extends JFrame { /** * */ private static final long serialVersionUID = 1L; private MainPanel mainPanel; public Test(String title) { super(title); this.mainPanel=new MainPanel(this); JPanel contentPanel=new JPanel(); contentPanel.setLayout(new BorderLayout()); this.setContentPane(contentPanel); mainPanel.setType(MainPanel.CURVES_PLANE); contentPanel.add(mainPanel,BorderLayout.CENTER); } public MainPanel getMainPanel() { return mainPanel; } public static void main(String[] args) { Test jf = new Test('小栗子'); try { SwingUtilities.updateComponentTreeUI(jf); } catch (Exception e) { e.printStackTrace(); } jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE); jf.setSize(1300, 820); jf.setVisible(true); } }
如果使用连接池的话,别忘记配置还有别忘记引入相应的jar包。